diff --git a/artifacts/build-info/36ee78c35dcd78904a34854a6c480231.json b/artifacts/build-info/36ee78c35dcd78904a34854a6c480231.json deleted file mode 100644 index f7eae53..0000000 --- a/artifacts/build-info/36ee78c35dcd78904a34854a6c480231.json +++ /dev/null @@ -1,66418 +0,0 @@ -{ - "id": "36ee78c35dcd78904a34854a6c480231", - "_format": "hh-sol-build-info-1", - "solcVersion": "0.8.3", - "solcLongVersion": "0.8.3+commit.8d00100c", - "input": { - "language": "Solidity", - "sources": { - "contracts/interface/ITellor.sol": { - "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.0;\n\ninterface ITellor{\n //Controller\n function addresses(bytes32) external view returns(address);\n function uints(bytes32) external view returns(uint256);\n function burn(uint256 _amount) external;\n function changeDeity(address _newDeity) external;\n function changeOwner(address _newOwner) external;\n function changeTellorContract(address _tContract) external;\n function changeControllerContract(address _newController) external;\n function changeGovernanceContract(address _newGovernance) external;\n function changeOracleContract(address _newOracle) external;\n function changeTreasuryContract(address _newTreasury) external;\n function changeUint(bytes32 _target, uint256 _amount) external;\n function migrate() external;\n function mint(address _reciever, uint256 _amount) external;\n function init() external;\n function getAllDisputeVars(uint256 _disputeId) external view returns (bytes32,bool,bool,bool,address,address,address,uint256[9] memory,int256);\n function getDisputeIdByDisputeHash(bytes32 _hash) external view returns (uint256);\n function getDisputeUintVars(uint256 _disputeId, bytes32 _data) external view returns(uint256);\n function getLastNewValueById(uint256 _requestId) external view returns (uint256, bool);\n function retrieveData(uint256 _requestId, uint256 _timestamp) external view returns (uint256);\n function getNewValueCountbyRequestId(uint256 _requestId) external view returns (uint256);\n function getAddressVars(bytes32 _data) external view returns (address);\n function getUintVar(bytes32 _data) external view returns (uint256);\n function totalSupply() external view returns (uint256);\n function name() external pure returns (string memory);\n function symbol() external pure returns (string memory);\n function decimals() external pure returns (uint8);\n function isMigrated(address _addy) external view returns (bool);\n function allowance(address _user, address _spender) external view returns (uint256);\n function allowedToTrade(address _user, uint256 _amount) external view returns (bool);\n function approve(address _spender, uint256 _amount) external returns (bool);\n function approveAndTransferFrom(address _from, address _to, uint256 _amount) external returns(bool);\n function balanceOf(address _user) external view returns (uint256);\n function balanceOfAt(address _user, uint256 _blockNumber)external view returns (uint256);\n function transfer(address _to, uint256 _amount)external returns (bool success);\n function transferFrom(address _from,address _to,uint256 _amount) external returns (bool success) ;\n function depositStake() external;\n function requestStakingWithdraw() external;\n function withdrawStake() external;\n function changeStakingStatus(address _reporter, uint _status) external;\n function slashReporter(address _reporter, address _disputer) external;\n function getStakerInfo(address _staker) external view returns (uint256, uint256);\n function getTimestampbyRequestIDandIndex(uint256 _requestId, uint256 _index) external view returns (uint256);\n function getNewCurrentVariables()external view returns (bytes32 _c,uint256[5] memory _r,uint256 _d,uint256 _t);\n function getNewValueCountbyQueryId(bytes32 _queryId) external view returns(uint256);\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index) external view returns(uint256);\n function retrieveData(bytes32 _queryId, uint256 _timestamp) external view returns(bytes memory);\n //Governance\n enum VoteResult {FAILED,PASSED,INVALID}\n function setApprovedFunction(bytes4 _func, bool _val) external;\n function beginDispute(bytes32 _queryId,uint256 _timestamp) external;\n function delegate(address _delegate) external;\n function delegateOfAt(address _user, uint256 _blockNumber) external view returns (address);\n function executeVote(uint256 _disputeId) external;\n function proposeVote(address _contract,bytes4 _function, bytes calldata _data, uint256 _timestamp) external;\n function tallyVotes(uint256 _disputeId) external;\n function governance() external view returns (address);\n function updateMinDisputeFee() external;\n function verify() external pure returns(uint);\n function vote(uint256 _disputeId, bool _supports, bool _invalidQuery) external;\n function voteFor(address[] calldata _addys,uint256 _disputeId, bool _supports, bool _invalidQuery) external;\n function getDelegateInfo(address _holder) external view returns(address,uint);\n function isFunctionApproved(bytes4 _func) external view returns(bool);\n function isApprovedGovernanceContract(address _contract) external returns (bool);\n function getVoteRounds(bytes32 _hash) external view returns(uint256[] memory);\n function getVoteCount() external view returns(uint256);\n function getVoteInfo(uint256 _disputeId) external view returns(bytes32,uint256[9] memory,bool[2] memory,VoteResult,bytes memory,bytes4,address[2] memory);\n function getDisputeInfo(uint256 _disputeId) external view returns(uint256,uint256,bytes memory, address);\n function getOpenDisputesOnId(bytes32 _queryId) external view returns(uint256);\n function didVote(uint256 _disputeId, address _voter) external view returns(bool);\n //Oracle\n function getReportTimestampByIndex(bytes32 _queryId, uint256 _index) external view returns(uint256);\n function getValueByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(bytes memory);\n function getBlockNumberByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(uint256);\n function getReportingLock() external view returns(uint256);\n function getReporterByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(address);\n function reportingLock() external view returns(uint256);\n function removeValue(bytes32 _queryId, uint256 _timestamp) external;\n function getReportsSubmittedByAddress(address _reporter) external view returns(uint256);\n function getTipsByUser(address _user) external view returns(uint256);\n function tipQuery(bytes32 _queryId, uint256 _tip, bytes memory _queryData) external;\n function submitValue(bytes32 _queryId, bytes calldata _value, uint256 _nonce, bytes memory _queryData) external;\n function burnTips() external;\n function changeReportingLock(uint256 _newReportingLock) external;\n function changeTimeBasedReward(uint256 _newTimeBasedReward) external;\n function getReporterLastTimestamp(address _reporter) external view returns(uint256);\n function getTipsById(bytes32 _queryId) external view returns(uint256);\n function getTimeBasedReward() external view returns(uint256);\n function getTimestampCountById(bytes32 _queryId) external view returns(uint256);\n function getTimestampIndexByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(uint256);\n function getCurrentReward(bytes32 _queryId) external view returns(uint256, uint256);\n function getCurrentValue(bytes32 _queryId) external view returns(bytes memory);\n function getTimeOfLastNewValue() external view returns(uint256);\n //Treasury\n function issueTreasury(uint256 _maxAmount, uint256 _rate, uint256 _duration) external;\n function payTreasury(address _investor,uint256 _id) external;\n function buyTreasury(uint256 _id,uint256 _amount) external;\n function getTreasuryDetails(uint256 _id) external view returns(uint256,uint256,uint256,uint256);\n function getTreasuryFundsByUser(address _user) external view returns(uint256);\n function getTreasuryAccount(uint256 _id, address _investor) external view returns(uint256,uint256,bool);\n function getTreasuryCount() external view returns(uint256);\n function getTreasuryOwners(uint256 _id) external view returns(address[] memory);\n function wasPaid(uint256 _id, address _investor) external view returns(bool);\n //Test functions\n function changeAddressVar(bytes32 _id, address _addy) external;\n\n //parachute functions\n function killContract() external;\n function migrateFor(address _destination,uint256 _amount) external;\n function rescue51PercentAttack(address _tokenHolder) external;\n function rescueBrokenDataReporting() external;\n function rescueFailedUpdate() external;\n}\n" - }, - "contracts/UsingTellor.sol": { - "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.0;\n\nimport \"./interface/ITellor.sol\";\n\n/**\n * @title UserContract\n * This contract allows for easy integration with the Tellor System\n * by helping smart contracts to read data from Tellor\n */\ncontract UsingTellor {\n ITellor public tellor;\n\n /*Constructor*/\n /**\n * @dev the constructor sets the tellor address in storage\n * @param _tellor is the TellorMaster address\n */\n constructor(address payable _tellor) {\n tellor = ITellor(_tellor);\n }\n\n /*Getters*/\n /**\n * @dev Allows the user to get the latest value for the queryId specified\n * @param _queryId is the id to look up the value for\n * @return _ifRetrieve bool true if non-zero value successfully retrieved\n * @return _value the value retrieved\n * @return _timestampRetrieved the retrieved value's timestamp\n */\n function getCurrentValue(bytes32 _queryId)\n public\n view\n returns (\n bool _ifRetrieve,\n bytes memory _value,\n uint256 _timestampRetrieved\n )\n {\n uint256 _count = getNewValueCountbyQueryId(_queryId);\n\n if (_count == 0) {\n return (false, bytes(\"\"), 0);\n }\n uint256 _time = getTimestampbyQueryIdandIndex(_queryId, _count - 1);\n _value = retrieveData(_queryId, _time);\n if (keccak256(_value) != keccak256(bytes(\"\")))\n return (true, _value, _time);\n return (false, bytes(\"\"), _time);\n }\n\n /**\n * @dev Retrieves the latest value for the queryId before the specified timestamp\n * @param _queryId is the queryId to look up the value for\n * @param _timestamp before which to search for latest value\n * @return _ifRetrieve bool true if able to retrieve a non-zero value\n * @return _value the value retrieved\n * @return _timestampRetrieved the value's timestamp\n */\n function getDataBefore(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (\n bool _ifRetrieve,\n bytes memory _value,\n uint256 _timestampRetrieved\n )\n {\n (bool _found, uint256 _index) = getIndexForDataBefore(\n _queryId,\n _timestamp\n );\n if (!_found) return (false, bytes(\"\"), 0);\n uint256 _time = getTimestampbyQueryIdandIndex(_queryId, _index);\n _value = retrieveData(_queryId, _time);\n if (keccak256(_value) != keccak256(bytes(\"\")))\n return (true, _value, _time);\n return (false, bytes(\"\"), 0);\n }\n\n /**\n * @dev Retrieves latest array index of data before the specified timestamp for the queryId\n * @param _queryId is the queryId to look up the index for\n * @param _timestamp is the timestamp before which to search for the latest index\n * @return _found whether the index was found\n * @return _index the latest index found before the specified timestamp\n */\n // slither-disable-next-line calls-loop\n function getIndexForDataBefore(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bool _found, uint256 _index)\n {\n uint256 _count = getNewValueCountbyQueryId(_queryId);\n\n if (_count > 0) {\n uint256 middle;\n uint256 start = 0;\n uint256 end = _count - 1;\n uint256 _time;\n\n //Checking Boundaries to short-circuit the algorithm\n _time = getTimestampbyQueryIdandIndex(_queryId, start);\n if (_time >= _timestamp) return (false, 0);\n _time = getTimestampbyQueryIdandIndex(_queryId, end);\n if (_time < _timestamp) return (true, end);\n\n //Since the value is within our boundaries, do a binary search\n while (true) {\n middle = (end - start) / 2 + 1 + start;\n _time = getTimestampbyQueryIdandIndex(_queryId, middle);\n if (_time < _timestamp) {\n //get immediate next value\n uint256 _nextTime = getTimestampbyQueryIdandIndex(\n _queryId,\n middle + 1\n );\n if (_nextTime >= _timestamp) {\n //_time is correct\n return (true, middle);\n } else {\n //look from middle + 1(next value) to end\n start = middle + 1;\n }\n } else {\n uint256 _prevTime = getTimestampbyQueryIdandIndex(\n _queryId,\n middle - 1\n );\n if (_prevTime < _timestamp) {\n // _prevtime is correct\n return (true, middle - 1);\n } else {\n //look from start to middle -1(prev value)\n end = middle - 1;\n }\n }\n //We couldn't find a value\n //if(middle - 1 == start || middle == _count) return (false, 0);\n }\n }\n return (false, 0);\n }\n\n /**\n * @dev Counts the number of values that have been submitted for the queryId\n * @param _queryId the id to look up\n * @return uint256 count of the number of values received for the queryId\n */\n function getNewValueCountbyQueryId(bytes32 _queryId)\n public\n view\n returns (uint256)\n {\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n return tellor.getTimestampCountById(_queryId);\n } else {\n return tellor.getNewValueCountbyQueryId(_queryId);\n }\n }\n\n // /**\n // * @dev Gets the timestamp for the value based on their index\n // * @param _queryId is the id to look up\n // * @param _index is the value index to look up\n // * @return uint256 timestamp\n // */\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index)\n public\n view\n returns (uint256)\n {\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n return tellor.getReportTimestampByIndex(_queryId, _index);\n } else {\n return tellor.getTimestampbyQueryIdandIndex(_queryId, _index);\n }\n }\n\n /**\n * @dev Determines whether a value with a given queryId and timestamp has been disputed\n * @param _queryId is the value id to look up\n * @param _timestamp is the timestamp of the value to look up\n * @return bool true if queryId/timestamp is under dispute\n */\n function isInDispute(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bool)\n {\n ITellor _governance;\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n ITellor _newTellor = ITellor(\n 0x88dF592F8eb5D7Bd38bFeF7dEb0fBc02cf3778a0\n );\n _governance = ITellor(\n _newTellor.addresses(\n 0xefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93\n )\n );\n } else {\n _governance = ITellor(tellor.governance());\n }\n return\n _governance\n .getVoteRounds(\n keccak256(abi.encodePacked(_queryId, _timestamp))\n )\n .length > 0;\n }\n\n /**\n * @dev Retrieve value from oracle based on queryId/timestamp\n * @param _queryId being requested\n * @param _timestamp to retrieve data/value from\n * @return bytes value for query/timestamp submitted\n */\n function retrieveData(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bytes memory)\n {\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n return tellor.getValueByTimestamp(_queryId, _timestamp);\n } else {\n return tellor.retrieveData(_queryId, _timestamp);\n }\n }\n}\n" - }, - "contracts/mocks/BenchUsingTellor.sol": { - "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.0;\n\nimport \"../UsingTellor.sol\";\n\n/**\n* @title UserContract\n* This contract inherits UsingTellor for simulating user interaction\n*/\ncontract BenchUsingTellor is UsingTellor{\n\n constructor(address payable _tellor) UsingTellor(_tellor) {}\n}\n" - }, - "contracts/TellorPlayground.sol": { - "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ncontract TellorPlayground {\n // Events\n event Approval(\n address indexed owner,\n address indexed spender,\n uint256 value\n );\n event NewReport(\n bytes32 _queryId,\n uint256 _time,\n bytes _value,\n uint256 _reward,\n uint256 _nonce,\n bytes _queryData,\n address _reporter\n );\n event NewStaker(address _staker, uint256 _amount);\n event TipAdded(\n address indexed _user,\n bytes32 indexed _queryId,\n uint256 _tip,\n uint256 _totalTip,\n bytes _queryData\n );\n event StakeWithdrawRequested(address _staker, uint256 _amount);\n event StakeWithdrawn(address _staker);\n event Transfer(address indexed from, address indexed to, uint256 value);\n\n // Storage\n mapping(bytes32 => address) public addresses;\n mapping(bytes32 => mapping(uint256 => bool)) public isDisputed; //queryId -> timestamp -> value\n mapping(bytes32 => mapping(uint256 => address)) public reporterByTimestamp;\n mapping(address => StakeInfo) stakerDetails; //mapping from a persons address to their staking info\n mapping(bytes32 => uint256[]) public timestamps;\n mapping(bytes32 => uint256) public tips; // mapping of data IDs to the amount of TRB they are tipped\n mapping(bytes32 => mapping(uint256 => bytes)) public values; //queryId -> timestamp -> value\n mapping(bytes32 => uint256[]) public voteRounds; // mapping of vote identifier hashes to an array of dispute IDs\n mapping(address => mapping(address => uint256)) private _allowances;\n mapping(address => uint256) private _balances;\n\n uint256 public constant timeBasedReward = 5e17; // time based reward for a reporter for successfully submitting a value\n uint256 public timeOfLastNewValue = block.timestamp; // time of the last new value, originally set to the block timestamp\n uint256 public tipsInContract; // number of tips within the contract\n uint256 public voteCount;\n uint256 private _totalSupply;\n string private _name;\n string private _symbol;\n uint8 private _decimals;\n\n // Structs\n struct StakeInfo {\n uint256 startDate; //stake start date\n uint256 stakedBalance; // staked balance\n uint256 lockedBalance; // amount locked for withdrawal\n uint256 reporterLastTimestamp; // timestamp of reporter's last reported value\n uint256 reportsSubmitted; // total number of reports submitted by reporter\n }\n\n // Functions\n /**\n * @dev Initializes playground parameters\n */\n constructor() {\n _name = \"TellorPlayground\";\n _symbol = \"TRBP\";\n _decimals = 18;\n addresses[\n keccak256(abi.encodePacked(\"_GOVERNANCE_CONTRACT\"))\n ] = address(this);\n }\n\n /**\n * @dev Approves amount that an address is alowed to spend of behalf of another\n * @param _spender The address which is allowed to spend the tokens\n * @param _amount The amount that msg.sender is allowing spender to use\n * @return bool Whether the transaction succeeded\n *\n */\n function approve(address _spender, uint256 _amount)\n public\n virtual\n returns (bool)\n {\n _approve(msg.sender, _spender, _amount);\n return true;\n }\n\n /**\n * @dev A mock function to create a dispute\n * @param _queryId The tellorId to be disputed\n * @param _timestamp the timestamp of the value to be disputed\n */\n function beginDispute(bytes32 _queryId, uint256 _timestamp) external {\n values[_queryId][_timestamp] = bytes(\"\");\n isDisputed[_queryId][_timestamp] = true;\n voteCount++;\n voteRounds[keccak256(abi.encodePacked(_queryId, _timestamp))].push(\n voteCount\n );\n }\n\n /**\n * @dev Public function to mint tokens to the given address\n * @param _user The address which will receive the tokens\n */\n function faucet(address _user) external {\n _mint(_user, 1000 ether);\n }\n\n /**\n * @dev A mock function to submit a value to be read without reporter staking needed\n * @param _queryId the ID to associate the value to\n * @param _value the value for the queryId\n * @param _nonce the current value count for the query id\n * @param _queryData the data used by reporters to fulfill the data query\n */\n // slither-disable-next-line timestamp\n function submitValue(\n bytes32 _queryId,\n bytes calldata _value,\n uint256 _nonce,\n bytes memory _queryData\n ) external {\n require(\n _nonce == timestamps[_queryId].length,\n \"nonce should be correct\"\n );\n require(\n _queryId == keccak256(_queryData) || uint256(_queryId) <= 100,\n \"id must be hash of bytes data\"\n );\n values[_queryId][block.timestamp] = _value;\n timestamps[_queryId].push(block.timestamp);\n // Send tips + timeBasedReward to reporter and reset tips for ID\n (uint256 _tip, uint256 _reward) = getCurrentReward(_queryId);\n if (_reward + _tip > 0) {\n transfer(msg.sender, _reward + _tip);\n }\n timeOfLastNewValue = block.timestamp;\n tipsInContract -= _tip;\n tips[_queryId] = 0;\n reporterByTimestamp[_queryId][block.timestamp] = msg.sender;\n stakerDetails[msg.sender].reporterLastTimestamp = block.timestamp;\n stakerDetails[msg.sender].reportsSubmitted++;\n emit NewReport(\n _queryId,\n block.timestamp,\n _value,\n _tip + _reward,\n _nonce,\n _queryData,\n msg.sender\n );\n }\n\n /**\n * @dev Adds a tip to a given query ID.\n * @param _queryId is the queryId to look up\n * @param _amount is the amount of tips\n * @param _queryData is the extra bytes data needed to fulfill the request\n */\n function tipQuery(\n bytes32 _queryId,\n uint256 _amount,\n bytes memory _queryData\n ) external {\n require(\n _queryId == keccak256(_queryData) || uint256(_queryId) <= 100,\n \"id must be hash of bytes data\"\n );\n _transfer(msg.sender, address(this), _amount);\n _amount = _amount / 2;\n _burn(address(this), _amount);\n tipsInContract += _amount;\n tips[_queryId] += _amount;\n emit TipAdded(\n msg.sender,\n _queryId,\n _amount,\n tips[_queryId],\n _queryData\n );\n }\n\n /**\n * @dev Transfer tokens from one user to another\n * @param _recipient The destination address\n * @param _amount The amount of tokens, including decimals, to transfer\n * @return bool If the transfer succeeded\n */\n function transfer(address _recipient, uint256 _amount)\n public\n virtual\n returns (bool)\n {\n _transfer(msg.sender, _recipient, _amount);\n return true;\n }\n\n /**\n * @dev Transfer tokens from user to another\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n * @return bool Whether the transfer succeeded\n */\n function transferFrom(\n address _sender,\n address _recipient,\n uint256 _amount\n ) public virtual returns (bool) {\n _transfer(_sender, _recipient, _amount);\n _approve(\n _sender,\n msg.sender,\n _allowances[_sender][msg.sender] - _amount\n );\n return true;\n }\n\n // Tellor Flex\n /**\n * @dev Allows a reporter to submit stake\n * @param _amount amount of tokens to stake\n */\n function depositStake(uint256 _amount) external {\n StakeInfo storage _staker = stakerDetails[msg.sender];\n if (_staker.lockedBalance > 0) {\n if (_staker.lockedBalance >= _amount) {\n _staker.lockedBalance -= _amount;\n } else {\n require(\n _transferFrom(\n msg.sender,\n address(this),\n _amount - _staker.lockedBalance\n )\n );\n _staker.lockedBalance = 0;\n }\n } else {\n require(_transferFrom(msg.sender, address(this), _amount));\n }\n _staker.startDate = block.timestamp; // This resets their stake start date to now\n _staker.stakedBalance += _amount;\n emit NewStaker(msg.sender, _amount);\n }\n\n /**\n * @dev Allows a reporter to request to withdraw their stake\n * @param _amount amount of staked tokens requesting to withdraw\n */\n function requestStakingWithdraw(uint256 _amount) external {\n StakeInfo storage _staker = stakerDetails[msg.sender];\n require(\n _staker.stakedBalance >= _amount,\n \"insufficient staked balance\"\n );\n _staker.startDate = block.timestamp;\n _staker.lockedBalance += _amount;\n _staker.stakedBalance -= _amount;\n emit StakeWithdrawRequested(msg.sender, _amount);\n }\n\n /**\n * @dev Withdraws a reporter's stake\n */\n function withdrawStake() external {\n StakeInfo storage _s = stakerDetails[msg.sender];\n // Ensure reporter is locked and that enough time has passed\n require(block.timestamp - _s.startDate >= 7 days, \"7 days didn't pass\");\n require(_s.lockedBalance > 0, \"reporter not locked for withdrawal\");\n _transfer(address(this), msg.sender, _s.lockedBalance);\n _s.lockedBalance = 0;\n emit StakeWithdrawn(msg.sender);\n }\n\n /**\n * @dev Returns the reporter for a given timestamp and queryId\n * @param _queryId bytes32 version of the queryId\n * @param _timestamp uint256 timestamp of report\n * @return address of data reporter\n */\n function getReporterByTimestamp(bytes32 _queryId, uint256 _timestamp)\n external\n view\n returns (address)\n {\n return reporterByTimestamp[_queryId][_timestamp];\n }\n\n /**\n * @dev Allows users to retrieve all information about a staker\n * @param _staker address of staker inquiring about\n * @return uint startDate of staking\n * @return uint current amount staked\n * @return uint current amount locked for withdrawal\n * @return uint reporter's last reported timestamp\n * @return uint total number of reports submitted by reporter\n */\n function getStakerInfo(address _staker)\n external\n view\n returns (\n uint256,\n uint256,\n uint256,\n uint256,\n uint256\n )\n {\n return (\n stakerDetails[_staker].startDate,\n stakerDetails[_staker].stakedBalance,\n stakerDetails[_staker].lockedBalance,\n stakerDetails[_staker].reporterLastTimestamp,\n stakerDetails[_staker].reportsSubmitted\n );\n }\n\n // Getters\n /**\n * @dev Returns the amount that an address is alowed to spend of behalf of another\n * @param _owner The address which owns the tokens\n * @param _spender The address that will use the tokens\n * @return uint256 The amount of allowed tokens\n */\n function allowance(address _owner, address _spender)\n public\n view\n virtual\n returns (uint256)\n {\n return _allowances[_owner][_spender];\n }\n\n /**\n * @dev Returns the balance of a given user.\n * @param _account user address\n * @return uint256 user's token balance\n */\n function balanceOf(address _account) public view returns (uint256) {\n return _balances[_account];\n }\n\n /**\n * @dev Returns the number of decimals used to get its user representation.\n * @return uint8 the number of decimals; used only for display purposes\n */\n function decimals() public view returns (uint8) {\n return _decimals;\n }\n\n /**\n * @dev Calculates the current reward for a reporter given tips and time based reward\n * @param _queryId is ID of the specific data feed\n * @return uint256 tip amount for given query ID\n * @return uint256 time based reward\n */\n // slither-disable-next-line timestamp\n function getCurrentReward(bytes32 _queryId)\n public\n view\n returns (uint256, uint256)\n {\n uint256 _timeDiff = block.timestamp - timeOfLastNewValue;\n uint256 _reward = (_timeDiff * timeBasedReward) / 300; //.5 TRB per 5 minutes (should we make this upgradeable)\n if (balanceOf(address(this)) < _reward + tipsInContract) {\n _reward = balanceOf(address(this)) - tipsInContract;\n }\n return (tips[_queryId], _reward);\n }\n\n /**\n * @dev Counts the number of values that have been submitted for a given ID\n * @param _queryId the ID to look up\n * @return uint256 count of the number of values received for the queryId\n */\n function getNewValueCountbyQueryId(bytes32 _queryId)\n public\n view\n returns (uint256)\n {\n return timestamps[_queryId].length;\n }\n\n /**\n * @dev Gets the timestamp for the value based on their index\n * @param _queryId is the queryId to look up\n * @param _index is the value index to look up\n * @return uint256 timestamp\n */\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index)\n public\n view\n returns (uint256)\n {\n uint256 len = timestamps[_queryId].length;\n if (len == 0 || len <= _index) return 0;\n return timestamps[_queryId][_index];\n }\n\n /**\n * @dev Returns an array of voting rounds for a given vote\n * @param _hash is the identifier hash for a vote\n * @return uint256[] memory dispute IDs of the vote rounds\n */\n function getVoteRounds(bytes32 _hash)\n public\n view\n returns (uint256[] memory)\n {\n return voteRounds[_hash];\n }\n\n /**\n * @dev Returns the name of the token.\n * @return string name of the token\n */\n function name() public view returns (string memory) {\n return _name;\n }\n\n /**\n * @dev Retrieves value from oracle based on queryId/timestamp\n * @param _queryId being requested\n * @param _timestamp to retrieve data/value from\n * @return bytes value for queryId/timestamp submitted\n */\n function retrieveData(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bytes memory)\n {\n return values[_queryId][_timestamp];\n }\n\n /**\n * @dev Returns the symbol of the token.\n * @return string symbol of the token\n */\n function symbol() public view returns (string memory) {\n return _symbol;\n }\n\n /**\n * @dev Returns the total supply of the token.\n * @return uint256 total supply of token\n */\n function totalSupply() public view returns (uint256) {\n return _totalSupply;\n }\n\n // Internal functions\n /**\n * @dev Internal function to approve tokens for the user\n * @param _owner The owner of the tokens\n * @param _spender The address which is allowed to spend the tokens\n * @param _amount The amount that msg.sender is allowing spender to use\n */\n function _approve(\n address _owner,\n address _spender,\n uint256 _amount\n ) internal virtual {\n require(_owner != address(0), \"ERC20: approve from the zero address\");\n require(_spender != address(0), \"ERC20: approve to the zero address\");\n _allowances[_owner][_spender] = _amount;\n emit Approval(_owner, _spender, _amount);\n }\n\n /**\n * @dev Internal function to burn tokens for the user\n * @param _account The address whose tokens to burn\n * @param _amount The quantity of tokens to burn\n */\n function _burn(address _account, uint256 _amount) internal virtual {\n require(_account != address(0), \"ERC20: burn from the zero address\");\n _balances[_account] -= _amount;\n _totalSupply -= _amount;\n emit Transfer(_account, address(0), _amount);\n }\n\n /**\n * @dev Internal function to create new tokens for the user\n * @param _account The address which receives minted tokens\n * @param _amount The quantity of tokens to min\n */\n function _mint(address _account, uint256 _amount) internal virtual {\n require(_account != address(0), \"ERC20: mint to the zero address\");\n _totalSupply += _amount;\n _balances[_account] += _amount;\n emit Transfer(address(0), _account, _amount);\n }\n\n /**\n * @dev Internal function to perform token transfer\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n */\n function _transfer(\n address _sender,\n address _recipient,\n uint256 _amount\n ) internal virtual {\n require(_sender != address(0), \"ERC20: transfer from the zero address\");\n require(\n _recipient != address(0),\n \"ERC20: transfer to the zero address\"\n );\n _balances[_sender] -= _amount;\n _balances[_recipient] += _amount;\n emit Transfer(_sender, _recipient, _amount);\n }\n\n /**\n * @dev Allows this contract to transfer tokens from one user to another\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n * @return bool Whether the transfer succeeded\n */\n function _transferFrom(\n address _sender,\n address _recipient,\n uint256 _amount\n ) internal virtual returns (bool) {\n _transfer(_sender, _recipient, _amount);\n _approve(\n _sender,\n msg.sender,\n _allowances[_sender][address(this)] - _amount\n );\n return true;\n }\n}\n" - } - }, - "settings": { - "optimizer": { - "enabled": false, - "runs": 200 - }, - "outputSelection": { - "*": { - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ], - "": [ - "ast" - ] - } - } - } - }, - "output": { - "contracts": { - "contracts/TellorPlayground.sol": { - "TellorPlayground": { - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_time", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_reward", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_nonce", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_queryData", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "address", - "name": "_reporter", - "type": "address" - } - ], - "name": "NewReport", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "_staker", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "NewStaker", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "_staker", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "StakeWithdrawRequested", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "_staker", - "type": "address" - } - ], - "name": "StakeWithdrawn", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "_user", - "type": "address" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_tip", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_totalTip", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_queryData", - "type": "bytes" - } - ], - "name": "TipAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "addresses", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_owner", - "type": "address" - }, - { - "internalType": "address", - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "beginDispute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "depositStake", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "name": "faucet", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentReward", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getNewValueCountbyQueryId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getReporterByTimestamp", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_staker", - "type": "address" - } - ], - "name": "getStakerInfo", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "name": "getTimestampbyQueryIdandIndex", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_hash", - "type": "bytes32" - } - ], - "name": "getVoteRounds", - "outputs": [ - { - "internalType": "uint256[]", - "name": "", - "type": "uint256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "isDisputed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "reporterByTimestamp", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "requestStakingWithdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "retrieveData", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_nonce", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_queryData", - "type": "bytes" - } - ], - "name": "submitValue", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "timeBasedReward", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "timeOfLastNewValue", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "timestamps", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_queryData", - "type": "bytes" - } - ], - "name": "tipQuery", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "tips", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "tipsInContract", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_recipient", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_sender", - "type": "address" - }, - { - "internalType": "address", - "name": "_recipient", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "values", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "voteCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "voteRounds", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawStake", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:1641:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "171:238:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "181:92:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "265:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "270:2:4", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "188:76:4" - }, - "nodeType": "YulFunctionCall", - "src": "188:85:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "181:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "371:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93", - "nodeType": "YulIdentifier", - "src": "282:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "282:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "282:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "384:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "395:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "400:2:4", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "391:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "391:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "384:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93_to_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "159:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "167:3:4", - "type": "" - } - ], - "src": "7:402:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "604:192:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "615:155:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "766:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93_to_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "622:142:4" - }, - "nodeType": "YulFunctionCall", - "src": "622:148:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "615:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "780:10:4", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "787:3:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "780:3:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "591:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "600:3:4", - "type": "" - } - ], - "src": "415:381:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "916:34:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "926:18:4", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "941:3:4" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "926:11:4" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "888:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "893:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "904:11:4", - "type": "" - } - ], - "src": "802:148:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1007:269:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1017:22:4", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1031:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1037:1:4", - "type": "", - "value": "2" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "1027:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1027:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1017:6:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1048:38:4", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1078:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1084:1:4", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1074:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1074:12:4" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "1052:18:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1125:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1139:27:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1153:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1161:4:4", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1149:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1149:17:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1139:6:4" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1105:18:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1098:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1098:26:4" - }, - "nodeType": "YulIf", - "src": "1095:2:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1228:42:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x22", - "nodeType": "YulIdentifier", - "src": "1242:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "1242:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1242:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1192:18:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1215:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1223:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1212:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "1212:14:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "1189:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "1189:38:4" - }, - "nodeType": "YulIf", - "src": "1186:2:4" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "991:4:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1000:6:4", - "type": "" - } - ], - "src": "956:320:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1310:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1327:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1330:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1320:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1320:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1320:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1424:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1427:4:4", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1417:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1417:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1417:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1448:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1451:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1441:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1441:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1441:15:4" - } - ] - }, - "name": "panic_error_0x22", - "nodeType": "YulFunctionDefinition", - "src": "1282:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1574:64:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1596:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1604:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1592:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1592:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "1608:22:4", - "type": "", - "value": "_GOVERNANCE_CONTRACT" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1585:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1585:46:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1585:46:4" - } - ] - }, - "name": "store_literal_in_memory_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1566:6:4", - "type": "" - } - ], - "src": "1468:170:4" - } - ] - }, - "contents": "{\n\n function abi_encode_t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 20)\n store_literal_in_memory_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93(pos)\n end := add(pos, 20)\n }\n\n function abi_encode_tuple_packed_t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos ) -> end {\n\n pos := abi_encode_t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n end := pos\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93(memPtr) {\n\n mstore(add(memPtr, 0), \"_GOVERNANCE_CONTRACT\")\n\n }\n\n}\n", - "id": 4, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "608060405242600a553480156200001557600080fd5b506040518060400160405280601081526020017f54656c6c6f72506c617967726f756e6400000000000000000000000000000000815250600e9080519060200190620000639291906200014b565b506040518060400160405280600481526020017f5452425000000000000000000000000000000000000000000000000000000000815250600f9080519060200190620000b19291906200014b565b506012601060006101000a81548160ff021916908360ff16021790555030600080604051602001620000e39062000222565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002d2565b828054620001599062000244565b90600052602060002090601f0160209004810192826200017d5760008555620001c9565b82601f106200019857805160ff1916838001178555620001c9565b82800160010185558215620001c9579182015b82811115620001c8578251825591602001919060010190620001ab565b5b509050620001d89190620001dc565b5090565b5b80821115620001f7576000816000905550600101620001dd565b5090565b60006200020a60148362000239565b91506200021782620002a9565b601482019050919050565b60006200022f82620001fb565b9150819050919050565b600081905092915050565b600060028204905060018216806200025d57607f821691505b602082108114156200027457620002736200027a565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f5f474f5645524e414e43455f434f4e5452414354000000000000000000000000600082015250565b61326880620002e26000396000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c806377b03e0d1161011a578063c5958af9116100ad578063ce5e11bf1161007c578063ce5e11bf14610666578063dd62ed3e14610696578063e07c5486146106c6578063ef0234ad146106f6578063f25133f31461071257610206565b8063c5958af9146105cc578063c6384071146105fc578063c979fe9f1461061a578063cb82cc8f1461064a57610206565b8063a1e588a5116100e9578063a1e588a514610545578063a9059cbb14610576578063b86d1d63146105a6578063bed9d861146105c257610206565b806377b03e0d146104bd5780638929f4c6146104ed57806395d89b411461050957806396426d971461052757610206565b8063313ce5671161019d578063699f200f1161016c578063699f200f146103ed57806369d43bd31461041d5780636fd4f2291461043b57806370a0823114610459578063733bdef01461048957610206565b8063313ce567146103535780635eaa9ced14610371578063602bf2271461038d57806364473df2146103bd57610206565b80631f379acc116101d95780631f379acc146102a7578063217053c0146102c357806323b872dd146102f3578063248638e51461032357610206565b806306fdde031461020b578063091b50ff14610229578063095ea7b31461025957806318160ddd14610289575b600080fd5b610213610742565b60405161022091906128ca565b60405180910390f35b610243600480360381019061023e9190612392565b6107d4565b60405161025091906128a8565b60405180910390f35b610273600480360381019061026e9190612295565b610881565b604051610280919061280e565b60405180910390f35b610291610898565b60405161029e9190612a4c565b60405180910390f35b6102c160048036038101906102bc9190612392565b6108a2565b005b6102dd60048036038101906102d89190612392565b6109a6565b6040516102ea91906127a8565b60405180910390f35b61030d60048036038101906103089190612246565b6109e8565b60405161031a919061280e565b60405180910390f35b61033d600480360381019061033891906122d1565b610a92565b60405161034a91906127ec565b60405180910390f35b61035b610afd565b6040516103689190612b21565b60405180910390f35b61038b600480360381019061038691906122fa565b610b14565b005b6103a760048036038101906103a291906122d1565b610e01565b6040516103b49190612a4c565b60405180910390f35b6103d760048036038101906103d29190612392565b610e19565b6040516103e4919061280e565b60405180910390f35b610407600480360381019061040291906122d1565b610e48565b60405161041491906127a8565b60405180910390f35b610425610e7b565b6040516104329190612a4c565b60405180910390f35b610443610e81565b6040516104509190612a4c565b60405180910390f35b610473600480360381019061046e91906121e1565b610e87565b6040516104809190612a4c565b60405180910390f35b6104a3600480360381019061049e91906121e1565b610ed0565b6040516104b4959493929190612ace565b60405180910390f35b6104d760048036038101906104d291906122d1565b61103a565b6040516104e49190612a4c565b60405180910390f35b61050760048036038101906105029190612435565b61105a565b005b610511611160565b60405161051e91906128ca565b60405180910390f35b61052f6111f2565b60405161053c9190612a4c565b60405180910390f35b61055f600480360381019061055a91906122d1565b6111fe565b60405161056d929190612a67565b60405180910390f35b610590600480360381019061058b9190612295565b61128e565b60405161059d919061280e565b60405180910390f35b6105c060048036038101906105bb91906121e1565b6112a5565b005b6105ca6112bb565b005b6105e660048036038101906105e19190612392565b6113ed565b6040516105f391906128a8565b60405180910390f35b6106046114a4565b6040516106119190612a4c565b60405180910390f35b610634600480360381019061062f9190612392565b6114aa565b6040516106419190612a4c565b60405180910390f35b610664600480360381019061065f9190612435565b6114db565b005b610680600480360381019061067b9190612392565b6115ff565b60405161068d9190612a4c565b60405180910390f35b6106b060048036038101906106ab919061220a565b611699565b6040516106bd9190612a4c565b60405180910390f35b6106e060048036038101906106db9190612392565b611720565b6040516106ed91906127a8565b60405180910390f35b610710600480360381019061070b91906123ce565b61176f565b005b61072c60048036038101906107279190612392565b611899565b6040516107399190612a4c565b60405180910390f35b6060600e805461075190612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612db9565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b600660205281600052604060002060205280600052604060002060009150915050805461080090612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461082c90612db9565b80156108795780601f1061084e57610100808354040283529160200191610879565b820191906000526020600020905b81548152906001019060200180831161085c57829003601f168201915b505050505081565b600061088e3384846118ca565b6001905092915050565b6000600d54905090565b6040518060200160405280600081525060066000848152602001908152602001600020600083815260200190815260200160002090805190602001906108e9929190611fc7565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600c600081548092919061093990612e1c565b919050555060076000838360405160200161095592919061277c565b604051602081830303815290604052805190602001208152602001908152602001600020600c5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109f5848484611a95565b610a87843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a829190612ce4565b6118ca565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610af157602002820191906000526020600020905b815481526020019060010190808311610add575b50505050509050919050565b6000601060009054906101000a900460ff16905090565b60046000868152602001908152602001600020805490508214610b6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b639061296c565b60405180910390fd5b8080519060200120851480610b85575060648560001c11155b610bc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbb9061292c565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610bf792919061204d565b5060046000868152602001908152602001600020429080600181540180825580915050600190039060005260206000200160009091909190915055600080610c3e876111fe565b9150915060008282610c509190612c03565b1115610c6d57610c6b338383610c669190612c03565b61128e565b505b42600a8190555081600b6000828254610c869190612ce4565b92505081905550600060056000898152602001908152602001600020819055503360026000898152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610da390612e1c565b91905055507fab1d593f8e2ecb165106e30a39db6769078d35c3fdbb110f24932f0d7af68c29874288888587610dd99190612c03565b898933604051610df0989796959493929190612829565b60405180910390a150505050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905081816001015410156110e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110db90612a0c565b60405180910390fd5b428160000181905550818160020160008282546111019190612c03565b925050819055508181600101600082825461111c9190612ce4565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516111549291906127c3565b60405180910390a15050565b6060600f805461116f90612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461119b90612db9565b80156111e85780601f106111bd576101008083540402835291602001916111e8565b820191906000526020600020905b8154815290600101906020018083116111cb57829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000806000600a54426112119190612ce4565b9050600061012c6706f05b59d3b200008361122c9190612c8a565b6112369190612c59565b9050600b54816112469190612c03565b61124f30610e87565b101561126e57600b5461126130610e87565b61126b9190612ce4565b90505b600560008681526020019081526020016000205481935093505050915091565b600061129b338484611a95565b6001905092915050565b6112b881683635c9adc5dea00000611c8b565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426113129190612ce4565b1015611353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134a9061294c565b60405180910390fd5b600081600201541161139a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611391906129cc565b60405180910390fd5b6113a930338360020154611a95565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec336040516113e291906127a8565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461141e90612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612db9565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b5050505050905092915050565b600c5481565b600760205281600052604060002081815481106114c657600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816002015411156115895781816002015410611556578181600201600082825461154a9190612ce4565b92505081905550611584565b611570333083600201548561156b9190612ce4565b611dd4565b61157957600080fd5b600081600201819055505b61159e565b611594333084611dd4565b61159d57600080fd5b5b428160000181905550818160010160008282546115bb9190612c03565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516115f39291906127c3565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061162a5750828111155b15611639576000915050611693565b600460008581526020019081526020016000208381548110611684577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b8080519060200120831480611788575060648360001c11155b6117c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117be9061292c565b60405180910390fd5b6117d2333084611a95565b6002826117df9190612c59565b91506117eb3083611e7e565b81600b60008282546117fd9190612c03565b92505081905550816005600085815260200190815260200160002060008282546118279190612c03565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff58460056000888152602001908152602001600020548560405161188c93929190612a90565b60405180910390a3505050565b600460205281600052604060002081815481106118b557600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561193a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611931906129ec565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156119aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119a19061290c565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611a889190612a4c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611afc906129ac565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6c906128ec565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bc49190612ce4565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c1a9190612c03565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c7e9190612a4c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611cfb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cf290612a2c565b60405180910390fd5b80600d6000828254611d0d9190612c03565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d639190612c03565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611dc89190612a4c565b60405180910390a35050565b6000611de1848484611a95565b611e73843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e6e9190612ce4565b6118ca565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee59061298c565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f3d9190612ce4565b9250508190555080600d6000828254611f569190612ce4565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fbb9190612a4c565b60405180910390a35050565b828054611fd390612db9565b90600052602060002090601f016020900481019282611ff5576000855561203c565b82601f1061200e57805160ff191683800117855561203c565b8280016001018555821561203c579182015b8281111561203b578251825591602001919060010190612020565b5b50905061204991906120d3565b5090565b82805461205990612db9565b90600052602060002090601f01602090048101928261207b57600085556120c2565b82601f1061209457803560ff19168380011785556120c2565b828001600101855582156120c2579182015b828111156120c15782358255916020019190600101906120a6565b5b5090506120cf91906120d3565b5090565b5b808211156120ec5760008160009055506001016120d4565b5090565b60006121036120fe84612b61565b612b3c565b90508281526020810184848401111561211b57600080fd5b612126848285612d77565b509392505050565b60008135905061213d816131ed565b92915050565b60008135905061215281613204565b92915050565b60008083601f84011261216a57600080fd5b8235905067ffffffffffffffff81111561218357600080fd5b60208301915083600182028301111561219b57600080fd5b9250929050565b600082601f8301126121b357600080fd5b81356121c38482602086016120f0565b91505092915050565b6000813590506121db8161321b565b92915050565b6000602082840312156121f357600080fd5b60006122018482850161212e565b91505092915050565b6000806040838503121561221d57600080fd5b600061222b8582860161212e565b925050602061223c8582860161212e565b9150509250929050565b60008060006060848603121561225b57600080fd5b60006122698682870161212e565b935050602061227a8682870161212e565b925050604061228b868287016121cc565b9150509250925092565b600080604083850312156122a857600080fd5b60006122b68582860161212e565b92505060206122c7858286016121cc565b9150509250929050565b6000602082840312156122e357600080fd5b60006122f184828501612143565b91505092915050565b60008060008060006080868803121561231257600080fd5b600061232088828901612143565b955050602086013567ffffffffffffffff81111561233d57600080fd5b61234988828901612158565b9450945050604061235c888289016121cc565b925050606086013567ffffffffffffffff81111561237957600080fd5b612385888289016121a2565b9150509295509295909350565b600080604083850312156123a557600080fd5b60006123b385828601612143565b92505060206123c4858286016121cc565b9150509250929050565b6000806000606084860312156123e357600080fd5b60006123f186828701612143565b9350506020612402868287016121cc565b925050604084013567ffffffffffffffff81111561241f57600080fd5b61242b868287016121a2565b9150509250925092565b60006020828403121561244757600080fd5b6000612455848285016121cc565b91505092915050565b600061246a8383612738565b60208301905092915050565b61247f81612d18565b82525050565b600061249082612ba2565b61249a8185612bd0565b93506124a583612b92565b8060005b838110156124d65781516124bd888261245e565b97506124c883612bc3565b9250506001810190506124a9565b5085935050505092915050565b6124ec81612d2a565b82525050565b6124fb81612d36565b82525050565b61251261250d82612d36565b612e65565b82525050565b60006125248385612be1565b9350612531838584612d77565b61253a83612f35565b840190509392505050565b600061255082612bad565b61255a8185612be1565b935061256a818560208601612d86565b61257381612f35565b840191505092915050565b600061258982612bb8565b6125938185612bf2565b93506125a3818560208601612d86565b6125ac81612f35565b840191505092915050565b60006125c4602383612bf2565b91506125cf82612f46565b604082019050919050565b60006125e7602283612bf2565b91506125f282612f95565b604082019050919050565b600061260a601d83612bf2565b915061261582612fe4565b602082019050919050565b600061262d601283612bf2565b91506126388261300d565b602082019050919050565b6000612650601783612bf2565b915061265b82613036565b602082019050919050565b6000612673602183612bf2565b915061267e8261305f565b604082019050919050565b6000612696602583612bf2565b91506126a1826130ae565b604082019050919050565b60006126b9602283612bf2565b91506126c4826130fd565b604082019050919050565b60006126dc602483612bf2565b91506126e78261314c565b604082019050919050565b60006126ff601b83612bf2565b915061270a8261319b565b602082019050919050565b6000612722601f83612bf2565b915061272d826131c4565b602082019050919050565b61274181612d60565b82525050565b61275081612d60565b82525050565b61276761276282612d60565b612e6f565b82525050565b61277681612d6a565b82525050565b60006127888285612501565b6020820191506127988284612756565b6020820191508190509392505050565b60006020820190506127bd6000830184612476565b92915050565b60006040820190506127d86000830185612476565b6127e56020830184612747565b9392505050565b600060208201905081810360008301526128068184612485565b905092915050565b600060208201905061282360008301846124e3565b92915050565b600060e08201905061283e600083018b6124f2565b61284b602083018a612747565b818103604083015261285e81888a612518565b905061286d6060830187612747565b61287a6080830186612747565b81810360a083015261288c8185612545565b905061289b60c0830184612476565b9998505050505050505050565b600060208201905081810360008301526128c28184612545565b905092915050565b600060208201905081810360008301526128e4818461257e565b905092915050565b60006020820190508181036000830152612905816125b7565b9050919050565b60006020820190508181036000830152612925816125da565b9050919050565b60006020820190508181036000830152612945816125fd565b9050919050565b6000602082019050818103600083015261296581612620565b9050919050565b6000602082019050818103600083015261298581612643565b9050919050565b600060208201905081810360008301526129a581612666565b9050919050565b600060208201905081810360008301526129c581612689565b9050919050565b600060208201905081810360008301526129e5816126ac565b9050919050565b60006020820190508181036000830152612a05816126cf565b9050919050565b60006020820190508181036000830152612a25816126f2565b9050919050565b60006020820190508181036000830152612a4581612715565b9050919050565b6000602082019050612a616000830184612747565b92915050565b6000604082019050612a7c6000830185612747565b612a896020830184612747565b9392505050565b6000606082019050612aa56000830186612747565b612ab26020830185612747565b8181036040830152612ac48184612545565b9050949350505050565b600060a082019050612ae36000830188612747565b612af06020830187612747565b612afd6040830186612747565b612b0a6060830185612747565b612b176080830184612747565b9695505050505050565b6000602082019050612b36600083018461276d565b92915050565b6000612b46612b57565b9050612b528282612deb565b919050565b6000604051905090565b600067ffffffffffffffff821115612b7c57612b7b612f06565b5b612b8582612f35565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612c0e82612d60565b9150612c1983612d60565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612c4e57612c4d612e79565b5b828201905092915050565b6000612c6482612d60565b9150612c6f83612d60565b925082612c7f57612c7e612ea8565b5b828204905092915050565b6000612c9582612d60565b9150612ca083612d60565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612cd957612cd8612e79565b5b828202905092915050565b6000612cef82612d60565b9150612cfa83612d60565b925082821015612d0d57612d0c612e79565b5b828203905092915050565b6000612d2382612d40565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612da4578082015181840152602081019050612d89565b83811115612db3576000848401525b50505050565b60006002820490506001821680612dd157607f821691505b60208210811415612de557612de4612ed7565b5b50919050565b612df482612f35565b810181811067ffffffffffffffff82111715612e1357612e12612f06565b5b80604052505050565b6000612e2782612d60565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612e5a57612e59612e79565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e63652073686f756c6420626520636f7272656374000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6131f681612d18565b811461320157600080fd5b50565b61320d81612d36565b811461321857600080fd5b50565b61322481612d60565b811461322f57600080fd5b5056fea2646970667358221220d6d6defe384cb57e129e09f3980376bedc3cdce3ee7e72bedd5aa279626fee2164736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE TIMESTAMP PUSH1 0xA SSTORE CALLVALUE DUP1 ISZERO PUSH3 0x15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x10 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54656C6C6F72506C617967726F756E6400000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0xE SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x63 SWAP3 SWAP2 SWAP1 PUSH3 0x14B JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5452425000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0xF SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0xB1 SWAP3 SWAP2 SWAP1 PUSH3 0x14B JUMP JUMPDEST POP PUSH1 0x12 PUSH1 0x10 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP ADDRESS PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0xE3 SWAP1 PUSH3 0x222 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x2D2 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0x159 SWAP1 PUSH3 0x244 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0x17D JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0x1C9 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0x198 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0x1C9 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0x1C9 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0x1C8 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0x1AB JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0x1D8 SWAP2 SWAP1 PUSH3 0x1DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0x1F7 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0x1DD JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x20A PUSH1 0x14 DUP4 PUSH3 0x239 JUMP JUMPDEST SWAP2 POP PUSH3 0x217 DUP3 PUSH3 0x2A9 JUMP JUMPDEST PUSH1 0x14 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x22F DUP3 PUSH3 0x1FB JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH3 0x25D JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0x274 JUMPI PUSH3 0x273 PUSH3 0x27A JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x5F474F5645524E414E43455F434F4E5452414354000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3268 DUP1 PUSH3 0x2E2 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x206 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x77B03E0D GT PUSH2 0x11A JUMPI DUP1 PUSH4 0xC5958AF9 GT PUSH2 0xAD JUMPI DUP1 PUSH4 0xCE5E11BF GT PUSH2 0x7C JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x666 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x696 JUMPI DUP1 PUSH4 0xE07C5486 EQ PUSH2 0x6C6 JUMPI DUP1 PUSH4 0xEF0234AD EQ PUSH2 0x6F6 JUMPI DUP1 PUSH4 0xF25133F3 EQ PUSH2 0x712 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x5CC JUMPI DUP1 PUSH4 0xC6384071 EQ PUSH2 0x5FC JUMPI DUP1 PUSH4 0xC979FE9F EQ PUSH2 0x61A JUMPI DUP1 PUSH4 0xCB82CC8F EQ PUSH2 0x64A JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xA1E588A5 GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0xA1E588A5 EQ PUSH2 0x545 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x576 JUMPI DUP1 PUSH4 0xB86D1D63 EQ PUSH2 0x5A6 JUMPI DUP1 PUSH4 0xBED9D861 EQ PUSH2 0x5C2 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x4BD JUMPI DUP1 PUSH4 0x8929F4C6 EQ PUSH2 0x4ED JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x509 JUMPI DUP1 PUSH4 0x96426D97 EQ PUSH2 0x527 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x19D JUMPI DUP1 PUSH4 0x699F200F GT PUSH2 0x16C JUMPI DUP1 PUSH4 0x699F200F EQ PUSH2 0x3ED JUMPI DUP1 PUSH4 0x69D43BD3 EQ PUSH2 0x41D JUMPI DUP1 PUSH4 0x6FD4F229 EQ PUSH2 0x43B JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x459 JUMPI DUP1 PUSH4 0x733BDEF0 EQ PUSH2 0x489 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 EQ PUSH2 0x353 JUMPI DUP1 PUSH4 0x5EAA9CED EQ PUSH2 0x371 JUMPI DUP1 PUSH4 0x602BF227 EQ PUSH2 0x38D JUMPI DUP1 PUSH4 0x64473DF2 EQ PUSH2 0x3BD JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x1F379ACC GT PUSH2 0x1D9 JUMPI DUP1 PUSH4 0x1F379ACC EQ PUSH2 0x2A7 JUMPI DUP1 PUSH4 0x217053C0 EQ PUSH2 0x2C3 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0x248638E5 EQ PUSH2 0x323 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x20B JUMPI DUP1 PUSH4 0x91B50FF EQ PUSH2 0x229 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x259 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x289 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x213 PUSH2 0x742 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x220 SWAP2 SWAP1 PUSH2 0x28CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x243 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23E SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x7D4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x250 SWAP2 SWAP1 PUSH2 0x28A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x273 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x26E SWAP2 SWAP1 PUSH2 0x2295 JUMP JUMPDEST PUSH2 0x881 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x291 PUSH2 0x898 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29E SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BC SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x8A2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D8 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x9A6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x30D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x308 SWAP2 SWAP1 PUSH2 0x2246 JUMP JUMPDEST PUSH2 0x9E8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x31A SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x33D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x338 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0xA92 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x34A SWAP2 SWAP1 PUSH2 0x27EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x35B PUSH2 0xAFD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x368 SWAP2 SWAP1 PUSH2 0x2B21 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x38B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x386 SWAP2 SWAP1 PUSH2 0x22FA JUMP JUMPDEST PUSH2 0xB14 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3A7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3A2 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0xE01 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3B4 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3D7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3D2 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0xE19 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3E4 SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x407 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x402 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x414 SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x425 PUSH2 0xE7B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x432 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x443 PUSH2 0xE81 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x450 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x473 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x46E SWAP2 SWAP1 PUSH2 0x21E1 JUMP JUMPDEST PUSH2 0xE87 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x480 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4A3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x49E SWAP2 SWAP1 PUSH2 0x21E1 JUMP JUMPDEST PUSH2 0xED0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4B4 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2ACE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4D7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4D2 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0x103A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4E4 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x507 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x502 SWAP2 SWAP1 PUSH2 0x2435 JUMP JUMPDEST PUSH2 0x105A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x511 PUSH2 0x1160 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x51E SWAP2 SWAP1 PUSH2 0x28CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x52F PUSH2 0x11F2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x53C SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x55F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x55A SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0x11FE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x56D SWAP3 SWAP2 SWAP1 PUSH2 0x2A67 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x590 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x58B SWAP2 SWAP1 PUSH2 0x2295 JUMP JUMPDEST PUSH2 0x128E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x59D SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5BB SWAP2 SWAP1 PUSH2 0x21E1 JUMP JUMPDEST PUSH2 0x12A5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5CA PUSH2 0x12BB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5E6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5E1 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x13ED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5F3 SWAP2 SWAP1 PUSH2 0x28A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x604 PUSH2 0x14A4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x611 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x634 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x62F SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x14AA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x641 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x664 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x65F SWAP2 SWAP1 PUSH2 0x2435 JUMP JUMPDEST PUSH2 0x14DB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x680 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x67B SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x15FF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x68D SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6B0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6AB SWAP2 SWAP1 PUSH2 0x220A JUMP JUMPDEST PUSH2 0x1699 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6BD SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6E0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6DB SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x1720 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6ED SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x710 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x70B SWAP2 SWAP1 PUSH2 0x23CE JUMP JUMPDEST PUSH2 0x176F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x72C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x727 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x1899 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x739 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0xE DUP1 SLOAD PUSH2 0x751 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x77D SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7CA JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x79F JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7CA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x7AD JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP POP DUP1 SLOAD PUSH2 0x800 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x82C SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x879 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x84E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x879 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x85C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x88E CALLER DUP5 DUP5 PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x8E9 SWAP3 SWAP2 SWAP1 PUSH2 0x1FC7 JUMP JUMPDEST POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x939 SWAP1 PUSH2 0x2E1C JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x955 SWAP3 SWAP2 SWAP1 PUSH2 0x277C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC SLOAD SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9F5 DUP5 DUP5 DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH2 0xA87 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xA82 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0xAF1 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0xADD JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x10 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP DUP3 EQ PUSH2 0xB6C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB63 SWAP1 PUSH2 0x296C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 EQ DUP1 PUSH2 0xB85 JUMPI POP PUSH1 0x64 DUP6 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0xBC4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBBB SWAP1 PUSH2 0x292C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 SWAP1 PUSH2 0xBF7 SWAP3 SWAP2 SWAP1 PUSH2 0x204D JUMP JUMPDEST POP PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 TIMESTAMP SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE PUSH1 0x0 DUP1 PUSH2 0xC3E DUP8 PUSH2 0x11FE JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 DUP3 DUP3 PUSH2 0xC50 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST GT ISZERO PUSH2 0xC6D JUMPI PUSH2 0xC6B CALLER DUP4 DUP4 PUSH2 0xC66 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST PUSH2 0x128E JUMP JUMPDEST POP JUMPDEST TIMESTAMP PUSH1 0xA DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0xC86 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP CALLER PUSH1 0x2 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP TIMESTAMP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0xDA3 SWAP1 PUSH2 0x2E1C JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH32 0xAB1D593F8E2ECB165106E30A39DB6769078D35C3FDBB110F24932F0D7AF68C29 DUP8 TIMESTAMP DUP9 DUP9 DUP6 DUP8 PUSH2 0xDD9 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST DUP10 DUP10 CALLER PUSH1 0x40 MLOAD PUSH2 0xDF0 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2829 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP12 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP2 SWAP4 SWAP6 SWAP1 SWAP3 SWAP5 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x1 ADD SLOAD LT ISZERO PUSH2 0x10E4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10DB SWAP1 PUSH2 0x2A0C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1101 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x111C SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0x3D8D9DF4BD0172DF32E557FA48E96435CD7F2CAC06AAFFACFAEE608E6F7898EF CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x1154 SWAP3 SWAP2 SWAP1 PUSH2 0x27C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xF DUP1 SLOAD PUSH2 0x116F SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x119B SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x11E8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x11BD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x11E8 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x11CB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0x6F05B59D3B20000 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA SLOAD TIMESTAMP PUSH2 0x1211 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x12C PUSH8 0x6F05B59D3B20000 DUP4 PUSH2 0x122C SWAP2 SWAP1 PUSH2 0x2C8A JUMP JUMPDEST PUSH2 0x1236 SWAP2 SWAP1 PUSH2 0x2C59 JUMP JUMPDEST SWAP1 POP PUSH1 0xB SLOAD DUP2 PUSH2 0x1246 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST PUSH2 0x124F ADDRESS PUSH2 0xE87 JUMP JUMPDEST LT ISZERO PUSH2 0x126E JUMPI PUSH1 0xB SLOAD PUSH2 0x1261 ADDRESS PUSH2 0xE87 JUMP JUMPDEST PUSH2 0x126B SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x5 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP2 SWAP4 POP SWAP4 POP POP POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x129B CALLER DUP5 DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x12B8 DUP2 PUSH9 0x3635C9ADC5DEA00000 PUSH2 0x1C8B JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH3 0x93A80 DUP2 PUSH1 0x0 ADD SLOAD TIMESTAMP PUSH2 0x1312 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST LT ISZERO PUSH2 0x1353 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x134A SWAP1 PUSH2 0x294C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT PUSH2 0x139A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1391 SWAP1 PUSH2 0x29CC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x13A9 ADDRESS CALLER DUP4 PUSH1 0x2 ADD SLOAD PUSH2 0x1A95 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH32 0x4A7934670BD8304E7DA22378BE1368F7C4FEF17C5AEE81804BEDA8638FE428EC CALLER PUSH1 0x40 MLOAD PUSH2 0x13E2 SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x141E SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x144A SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1497 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x146C JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1497 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x147A JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xC SLOAD DUP2 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x14C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT ISZERO PUSH2 0x1589 JUMPI DUP2 DUP2 PUSH1 0x2 ADD SLOAD LT PUSH2 0x1556 JUMPI DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x154A SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x1584 JUMP JUMPDEST PUSH2 0x1570 CALLER ADDRESS DUP4 PUSH1 0x2 ADD SLOAD DUP6 PUSH2 0x156B SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST PUSH2 0x1DD4 JUMP JUMPDEST PUSH2 0x1579 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP JUMPDEST PUSH2 0x159E JUMP JUMPDEST PUSH2 0x1594 CALLER ADDRESS DUP5 PUSH2 0x1DD4 JUMP JUMPDEST PUSH2 0x159D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15BB SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0xA96C2CCE65119A2170D1711A6E82F18F2006448828483BA7545E595476543647 CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x15F3 SWAP3 SWAP2 SWAP1 PUSH2 0x27C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP2 EQ DUP1 PUSH2 0x162A JUMPI POP DUP3 DUP2 GT ISZERO JUMPDEST ISZERO PUSH2 0x1639 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1693 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x1684 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD SLOAD SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP4 EQ DUP1 PUSH2 0x1788 JUMPI POP PUSH1 0x64 DUP4 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0x17C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17BE SWAP1 PUSH2 0x292C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x17D2 CALLER ADDRESS DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH2 0x17DF SWAP2 SWAP1 PUSH2 0x2C59 JUMP JUMPDEST SWAP2 POP PUSH2 0x17EB ADDRESS DUP4 PUSH2 0x1E7E JUMP JUMPDEST DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x17FD SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1827 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xD951D408A0F5057DA5C25B826FB5CE403D56542962B6AC6994DBC6D5432FBFF5 DUP5 PUSH1 0x5 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP6 PUSH1 0x40 MLOAD PUSH2 0x188C SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2A90 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x18B5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x193A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1931 SWAP1 PUSH2 0x29EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x19AA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19A1 SWAP1 PUSH2 0x290C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x8 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1A88 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1B05 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AFC SWAP1 PUSH2 0x29AC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1B75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B6C SWAP1 PUSH2 0x28EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1BC4 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C1A SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1C7E SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1CFB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1CF2 SWAP1 PUSH2 0x2A2C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D0D SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D63 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1DC8 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DE1 DUP5 DUP5 DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH2 0x1E73 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x1E6E SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1EEE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EE5 SWAP1 PUSH2 0x298C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F3D SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F56 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1FBB SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1FD3 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1FF5 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x203C JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x200E JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x203C JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x203C JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x203B JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2020 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2049 SWAP2 SWAP1 PUSH2 0x20D3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x2059 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x207B JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x20C2 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x2094 JUMPI DUP1 CALLDATALOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x20C2 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x20C2 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x20C1 JUMPI DUP3 CALLDATALOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x20A6 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x20CF SWAP2 SWAP1 PUSH2 0x20D3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x20EC JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x20D4 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2103 PUSH2 0x20FE DUP5 PUSH2 0x2B61 JUMP JUMPDEST PUSH2 0x2B3C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x211B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2126 DUP5 DUP3 DUP6 PUSH2 0x2D77 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x213D DUP2 PUSH2 0x31ED JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2152 DUP2 PUSH2 0x3204 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x216A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2183 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x219B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x21B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x21C3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x20F0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x21DB DUP2 PUSH2 0x321B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2201 DUP5 DUP3 DUP6 ADD PUSH2 0x212E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x221D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x222B DUP6 DUP3 DUP7 ADD PUSH2 0x212E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x223C DUP6 DUP3 DUP7 ADD PUSH2 0x212E JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x225B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2269 DUP7 DUP3 DUP8 ADD PUSH2 0x212E JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x227A DUP7 DUP3 DUP8 ADD PUSH2 0x212E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x228B DUP7 DUP3 DUP8 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x22A8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22B6 DUP6 DUP3 DUP7 ADD PUSH2 0x212E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22C7 DUP6 DUP3 DUP7 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x22E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22F1 DUP5 DUP3 DUP6 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x2312 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2320 DUP9 DUP3 DUP10 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x233D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2349 DUP9 DUP3 DUP10 ADD PUSH2 0x2158 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 PUSH2 0x235C DUP9 DUP3 DUP10 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2379 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2385 DUP9 DUP3 DUP10 ADD PUSH2 0x21A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x23A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x23B3 DUP6 DUP3 DUP7 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x23C4 DUP6 DUP3 DUP7 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x23E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x23F1 DUP7 DUP3 DUP8 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2402 DUP7 DUP3 DUP8 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x241F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x242B DUP7 DUP3 DUP8 ADD PUSH2 0x21A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2447 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2455 DUP5 DUP3 DUP6 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x246A DUP4 DUP4 PUSH2 0x2738 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x247F DUP2 PUSH2 0x2D18 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2490 DUP3 PUSH2 0x2BA2 JUMP JUMPDEST PUSH2 0x249A DUP2 DUP6 PUSH2 0x2BD0 JUMP JUMPDEST SWAP4 POP PUSH2 0x24A5 DUP4 PUSH2 0x2B92 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x24D6 JUMPI DUP2 MLOAD PUSH2 0x24BD DUP9 DUP3 PUSH2 0x245E JUMP JUMPDEST SWAP8 POP PUSH2 0x24C8 DUP4 PUSH2 0x2BC3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x24A9 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x24EC DUP2 PUSH2 0x2D2A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24FB DUP2 PUSH2 0x2D36 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2512 PUSH2 0x250D DUP3 PUSH2 0x2D36 JUMP JUMPDEST PUSH2 0x2E65 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2524 DUP4 DUP6 PUSH2 0x2BE1 JUMP JUMPDEST SWAP4 POP PUSH2 0x2531 DUP4 DUP6 DUP5 PUSH2 0x2D77 JUMP JUMPDEST PUSH2 0x253A DUP4 PUSH2 0x2F35 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2550 DUP3 PUSH2 0x2BAD JUMP JUMPDEST PUSH2 0x255A DUP2 DUP6 PUSH2 0x2BE1 JUMP JUMPDEST SWAP4 POP PUSH2 0x256A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2D86 JUMP JUMPDEST PUSH2 0x2573 DUP2 PUSH2 0x2F35 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2589 DUP3 PUSH2 0x2BB8 JUMP JUMPDEST PUSH2 0x2593 DUP2 DUP6 PUSH2 0x2BF2 JUMP JUMPDEST SWAP4 POP PUSH2 0x25A3 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2D86 JUMP JUMPDEST PUSH2 0x25AC DUP2 PUSH2 0x2F35 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25C4 PUSH1 0x23 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x25CF DUP3 PUSH2 0x2F46 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25E7 PUSH1 0x22 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x25F2 DUP3 PUSH2 0x2F95 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x260A PUSH1 0x1D DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x2615 DUP3 PUSH2 0x2FE4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x262D PUSH1 0x12 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x2638 DUP3 PUSH2 0x300D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2650 PUSH1 0x17 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x265B DUP3 PUSH2 0x3036 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2673 PUSH1 0x21 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x267E DUP3 PUSH2 0x305F JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2696 PUSH1 0x25 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x26A1 DUP3 PUSH2 0x30AE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26B9 PUSH1 0x22 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x26C4 DUP3 PUSH2 0x30FD JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26DC PUSH1 0x24 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x26E7 DUP3 PUSH2 0x314C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26FF PUSH1 0x1B DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x270A DUP3 PUSH2 0x319B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2722 PUSH1 0x1F DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x272D DUP3 PUSH2 0x31C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2741 DUP2 PUSH2 0x2D60 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2750 DUP2 PUSH2 0x2D60 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2767 PUSH2 0x2762 DUP3 PUSH2 0x2D60 JUMP JUMPDEST PUSH2 0x2E6F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2776 DUP2 PUSH2 0x2D6A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2788 DUP3 DUP6 PUSH2 0x2501 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x2798 DUP3 DUP5 PUSH2 0x2756 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27BD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2476 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x27D8 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2476 JUMP JUMPDEST PUSH2 0x27E5 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2806 DUP2 DUP5 PUSH2 0x2485 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2823 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24E3 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 ADD SWAP1 POP PUSH2 0x283E PUSH1 0x0 DUP4 ADD DUP12 PUSH2 0x24F2 JUMP JUMPDEST PUSH2 0x284B PUSH1 0x20 DUP4 ADD DUP11 PUSH2 0x2747 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x285E DUP2 DUP9 DUP11 PUSH2 0x2518 JUMP JUMPDEST SWAP1 POP PUSH2 0x286D PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x287A PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x2747 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x288C DUP2 DUP6 PUSH2 0x2545 JUMP JUMPDEST SWAP1 POP PUSH2 0x289B PUSH1 0xC0 DUP4 ADD DUP5 PUSH2 0x2476 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28C2 DUP2 DUP5 PUSH2 0x2545 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28E4 DUP2 DUP5 PUSH2 0x257E JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2905 DUP2 PUSH2 0x25B7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2925 DUP2 PUSH2 0x25DA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2945 DUP2 PUSH2 0x25FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2965 DUP2 PUSH2 0x2620 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2985 DUP2 PUSH2 0x2643 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29A5 DUP2 PUSH2 0x2666 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29C5 DUP2 PUSH2 0x2689 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29E5 DUP2 PUSH2 0x26AC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A05 DUP2 PUSH2 0x26CF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A25 DUP2 PUSH2 0x26F2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A45 DUP2 PUSH2 0x2715 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2A61 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2A7C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2A89 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x2AA5 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2AB2 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2747 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2AC4 DUP2 DUP5 PUSH2 0x2545 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x2AE3 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2AF0 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2AFD PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2B0A PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2B17 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2B36 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x276D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B46 PUSH2 0x2B57 JUMP JUMPDEST SWAP1 POP PUSH2 0x2B52 DUP3 DUP3 PUSH2 0x2DEB JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2B7C JUMPI PUSH2 0x2B7B PUSH2 0x2F06 JUMP JUMPDEST JUMPDEST PUSH2 0x2B85 DUP3 PUSH2 0x2F35 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C0E DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C19 DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2C4E JUMPI PUSH2 0x2C4D PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C64 DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C6F DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2C7F JUMPI PUSH2 0x2C7E PUSH2 0x2EA8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C95 DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CA0 DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2CD9 JUMPI PUSH2 0x2CD8 PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CEF DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CFA DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2D0D JUMPI PUSH2 0x2D0C PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D23 DUP3 PUSH2 0x2D40 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2DA4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2D89 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2DB3 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2DD1 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2DE5 JUMPI PUSH2 0x2DE4 PUSH2 0x2ED7 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2DF4 DUP3 PUSH2 0x2F35 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2E13 JUMPI PUSH2 0x2E12 PUSH2 0x2F06 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E27 DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2E5A JUMPI PUSH2 0x2E59 PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6964206D7573742062652068617368206F662062797465732064617461000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x372064617973206469646E277420706173730000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6E6F6E63652073686F756C6420626520636F7272656374000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x7265706F72746572206E6F74206C6F636B656420666F72207769746864726177 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616C000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x696E73756666696369656E74207374616B65642062616C616E63650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x31F6 DUP2 PUSH2 0x2D18 JUMP JUMPDEST DUP2 EQ PUSH2 0x3201 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x320D DUP2 PUSH2 0x2D36 JUMP JUMPDEST DUP2 EQ PUSH2 0x3218 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3224 DUP2 PUSH2 0x2D60 JUMP JUMPDEST DUP2 EQ PUSH2 0x322F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD6 0xD6 0xDE INVALID CODESIZE 0x4C 0xB5 PUSH31 0x129E09F3980376BEDC3CDCE3EE7E72BEDD5AA279626FEE2164736F6C634300 ADDMOD SUB STOP CALLER ", - "sourceMap": "57:18000:0:-:0;;;1832:15;1796:51;;2594:217;;;;;;;;;;2618:26;;;;;;;;;;;;;;;;;:5;:26;;;;;;;;;;;;:::i;:::-;;2654:16;;;;;;;;;;;;;;;;;:7;:16;;;;;;;;;;;;:::i;:::-;;2692:2;2680:9;;:14;;;;;;;;;;;;;;;;;;2799:4;2704:9;:84;2737:40;;;;;;;:::i;:::-;;;;;;;;;;;;;2727:51;;;;;;2704:84;;;;;;;;;;;;:100;;;;;;;;;;;;;;;;;;57:18000;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:402:4:-;;188:85;270:2;265:3;188:85;:::i;:::-;181:92;;282:93;371:3;282:93;:::i;:::-;400:2;395:3;391:12;384:19;;171:238;;;:::o;415:381::-;;622:148;766:3;622:148;:::i;:::-;615:155;;787:3;780:10;;604:192;;;:::o;802:148::-;;941:3;926:18;;916:34;;;;:::o;956:320::-;;1037:1;1031:4;1027:12;1017:22;;1084:1;1078:4;1074:12;1105:18;1095:2;;1161:4;1153:6;1149:17;1139:27;;1095:2;1223;1215:6;1212:14;1192:18;1189:38;1186:2;;;1242:18;;:::i;:::-;1186:2;1007:269;;;;:::o;1282:180::-;1330:77;1327:1;1320:88;1427:4;1424:1;1417:15;1451:4;1448:1;1441:15;1468:170;1608:22;1604:1;1596:6;1592:14;1585:46;1574:64;:::o;57:18000:0:-;;;;;;;" - }, - "deployedBytecode": { - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:31070:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "90:260:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "100:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "166:6:4" - } - ], - "functionName": { - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "125:40:4" - }, - "nodeType": "YulFunctionCall", - "src": "125:48:4" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "109:15:4" - }, - "nodeType": "YulFunctionCall", - "src": "109:65:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "100:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "190:5:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "197:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "183:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "183:21:4" - }, - "nodeType": "YulExpressionStatement", - "src": "183:21:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "213:27:4", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "228:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "235:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "224:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "224:16:4" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "217:3:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "278:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "287:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "290:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "280:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "280:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "280:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "259:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "264:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "255:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "255:16:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "273:3:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "252:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "252:25:4" - }, - "nodeType": "YulIf", - "src": "249:2:4" - }, - { - "expression": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "327:3:4" - }, - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "332:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "337:6:4" - } - ], - "functionName": { - "name": "copy_calldata_to_memory", - "nodeType": "YulIdentifier", - "src": "303:23:4" - }, - "nodeType": "YulFunctionCall", - "src": "303:41:4" - }, - "nodeType": "YulExpressionStatement", - "src": "303:41:4" - } - ] - }, - "name": "abi_decode_available_length_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "63:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "68:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "76:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "84:5:4", - "type": "" - } - ], - "src": "7:343:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "408:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "418:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "440:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "427:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "427:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "418:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "483:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_address", - "nodeType": "YulIdentifier", - "src": "456:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "456:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "456:33:4" - } - ] - }, - "name": "abi_decode_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "386:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "394:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "402:5:4", - "type": "" - } - ], - "src": "356:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "553:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "563:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "585:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "572:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "572:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "563:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "628:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_bytes32", - "nodeType": "YulIdentifier", - "src": "601:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "601:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "601:33:4" - } - ] - }, - "name": "abi_decode_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "531:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "539:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "547:5:4", - "type": "" - } - ], - "src": "501:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "733:277:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "782:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "791:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "794:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "784:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "784:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "784:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "761:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "769:4:4", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "757:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "757:17:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "776:3:4" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "753:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "753:27:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "746:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "746:35:4" - }, - "nodeType": "YulIf", - "src": "743:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "807:30:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "830:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "817:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "817:20:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "807:6:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "880:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "889:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "892:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "882:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "882:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "882:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "852:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "860:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "849:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "849:30:4" - }, - "nodeType": "YulIf", - "src": "846:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "905:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "921:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "929:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "917:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "917:17:4" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "905:8:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "988:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "997:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1000:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "990:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "990:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "990:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "953:8:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "967:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "975:4:4", - "type": "", - "value": "0x01" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "963:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "963:17:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "949:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "949:32:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "983:3:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "946:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "946:41:4" - }, - "nodeType": "YulIf", - "src": "943:2:4" - } - ] - }, - "name": "abi_decode_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "700:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "708:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "716:8:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "726:6:4", - "type": "" - } - ], - "src": "659:351:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1090:210:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1139:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1148:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1151:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1141:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1141:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1141:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1118:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1126:4:4", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1114:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1114:17:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1133:3:4" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1110:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1110:27:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1103:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1103:35:4" - }, - "nodeType": "YulIf", - "src": "1100:2:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1164:34:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1191:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1178:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "1178:20:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1168:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1207:87:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1267:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1275:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1263:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1263:17:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1282:6:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1290:3:4" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "1216:46:4" - }, - "nodeType": "YulFunctionCall", - "src": "1216:78:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1207:5:4" - } - ] - } - ] - }, - "name": "abi_decode_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1068:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1076:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1084:5:4", - "type": "" - } - ], - "src": "1029:271:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1358:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1368:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1390:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1377:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "1377:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1368:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1433:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "1406:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "1406:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1406:33:4" - } - ] - }, - "name": "abi_decode_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1336:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1344:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1352:5:4", - "type": "" - } - ], - "src": "1306:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1517:196:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1563:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1572:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1575:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1565:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1565:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1565:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1538:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1547:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1534:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1534:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1559:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1530:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1530:32:4" - }, - "nodeType": "YulIf", - "src": "1527:2:4" - }, - { - "nodeType": "YulBlock", - "src": "1589:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1604:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1618:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1608:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1633:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1668:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1679:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1664:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1664:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1688:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "1643:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "1643:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1633:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1487:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1498:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1510:6:4", - "type": "" - } - ], - "src": "1451:262:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1802:324:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1848:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1857:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1860:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1850:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1850:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1850:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1823:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1832:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1819:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1819:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1844:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1815:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1815:32:4" - }, - "nodeType": "YulIf", - "src": "1812:2:4" - }, - { - "nodeType": "YulBlock", - "src": "1874:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1889:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1903:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1893:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1918:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1953:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1964:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1949:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1949:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1973:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "1928:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "1928:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1918:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "2001:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2016:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2030:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2020:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2046:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2081:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2092:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2077:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2077:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2101:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "2056:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "2056:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2046:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1764:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1775:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1787:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1795:6:4", - "type": "" - } - ], - "src": "1719:407:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2232:452:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2278:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2287:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2290:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2280:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2280:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2280:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2253:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2262:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2249:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2249:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2274:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2245:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2245:32:4" - }, - "nodeType": "YulIf", - "src": "2242:2:4" - }, - { - "nodeType": "YulBlock", - "src": "2304:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2319:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2333:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2323:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2348:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2383:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2394:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2379:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2379:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2403:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "2358:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "2358:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2348:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "2431:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2446:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2460:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2450:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2476:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2511:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2522:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2507:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2507:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2531:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "2486:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "2486:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2476:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "2559:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2574:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2588:2:4", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2578:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2604:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2639:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2650:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2635:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2635:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2659:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "2614:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "2614:53:4" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2604:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2186:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2197:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2209:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2217:6:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2225:6:4", - "type": "" - } - ], - "src": "2132:552:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2773:324:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2819:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2828:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2831:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2821:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2821:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2821:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2794:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2803:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2790:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2790:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2815:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2786:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2786:32:4" - }, - "nodeType": "YulIf", - "src": "2783:2:4" - }, - { - "nodeType": "YulBlock", - "src": "2845:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2860:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2874:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2864:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2889:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2924:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2935:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2920:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2920:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2944:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "2899:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "2899:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2889:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "2972:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2987:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3001:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2991:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3017:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3052:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3063:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3048:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3048:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3072:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "3027:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3027:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3017:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2735:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2746:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2758:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2766:6:4", - "type": "" - } - ], - "src": "2690:407:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3169:196:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3215:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3224:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3227:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3217:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3217:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3217:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3190:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3199:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3186:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3186:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3211:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3182:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3182:32:4" - }, - "nodeType": "YulIf", - "src": "3179:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3241:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3256:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3270:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3260:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3285:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3320:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3331:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3316:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3316:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3340:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "3295:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3295:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3285:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3139:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3150:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3162:6:4", - "type": "" - } - ], - "src": "3103:262:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3516:795:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3563:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3572:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3575:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3565:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3565:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3565:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3537:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3546:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3533:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3533:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3558:3:4", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3529:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3529:33:4" - }, - "nodeType": "YulIf", - "src": "3526:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3589:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3604:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3618:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3608:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3633:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3668:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3679:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3664:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3664:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3688:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "3643:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3643:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3633:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "3716:230:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3731:46:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3762:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3773:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3758:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3758:18:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3745:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "3745:32:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3735:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3824:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3833:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3836:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3826:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3826:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3826:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3796:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3804:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3793:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "3793:30:4" - }, - "nodeType": "YulIf", - "src": "3790:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "3854:82:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3908:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3919:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3904:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3904:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3928:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes_calldata_ptr", - "nodeType": "YulIdentifier", - "src": "3872:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "3872:64:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3854:6:4" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3862:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "3956:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3971:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3985:2:4", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3975:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4001:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4036:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4047:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4032:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4032:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4056:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "4011:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "4011:53:4" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "4001:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "4084:220:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4099:46:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4130:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4141:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4126:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4126:18:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4113:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "4113:32:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4103:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4192:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4201:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4204:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4194:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4194:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4194:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4164:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4172:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4161:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "4161:30:4" - }, - "nodeType": "YulIf", - "src": "4158:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "4222:72:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4266:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4277:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4262:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4262:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4286:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "4232:29:4" - }, - "nodeType": "YulFunctionCall", - "src": "4232:62:4" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "4222:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_bytes_calldata_ptrt_uint256t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3454:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3465:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3477:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3485:6:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3493:6:4", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3501:6:4", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3509:6:4", - "type": "" - } - ], - "src": "3371:940:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4400:324:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4446:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4455:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4458:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4448:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4448:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4448:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4421:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4430:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4417:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4417:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4442:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4413:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4413:32:4" - }, - "nodeType": "YulIf", - "src": "4410:2:4" - }, - { - "nodeType": "YulBlock", - "src": "4472:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4487:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4501:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4491:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4516:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4551:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4562:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4547:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4547:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4571:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4526:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "4526:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4516:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "4599:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4614:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4628:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4618:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4644:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4679:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4690:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4675:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4675:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4699:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "4654:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "4654:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4644:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4362:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4373:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4385:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4393:6:4", - "type": "" - } - ], - "src": "4317:407:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4839:554:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4885:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4894:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4897:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4887:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4887:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4887:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4860:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4869:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4856:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4856:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4881:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4852:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4852:32:4" - }, - "nodeType": "YulIf", - "src": "4849:2:4" - }, - { - "nodeType": "YulBlock", - "src": "4911:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4926:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4940:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4930:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4955:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4990:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5001:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4986:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4986:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5010:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4965:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "4965:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4955:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "5038:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5053:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5067:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5057:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5083:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5118:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5129:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5114:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5114:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5138:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "5093:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "5093:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5083:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "5166:220:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5181:46:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5212:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5223:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5208:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5208:18:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5195:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "5195:32:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5185:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5274:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5283:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5286:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5276:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5276:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5276:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5246:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5254:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5243:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "5243:30:4" - }, - "nodeType": "YulIf", - "src": "5240:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "5304:72:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5348:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5359:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5344:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5344:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5368:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "5314:29:4" - }, - "nodeType": "YulFunctionCall", - "src": "5314:62:4" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "5304:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4793:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4804:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4816:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4824:6:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "4832:6:4", - "type": "" - } - ], - "src": "4730:663:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5465:196:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5511:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5520:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5523:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5513:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5513:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5513:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5486:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5495:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5482:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5482:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5507:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5478:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5478:32:4" - }, - "nodeType": "YulIf", - "src": "5475:2:4" - }, - { - "nodeType": "YulBlock", - "src": "5537:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5552:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5566:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5556:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5581:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5616:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5627:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5612:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5612:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5636:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "5591:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "5591:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5581:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5435:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5446:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5458:6:4", - "type": "" - } - ], - "src": "5399:262:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5747:99:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5791:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5799:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256", - "nodeType": "YulIdentifier", - "src": "5757:33:4" - }, - "nodeType": "YulFunctionCall", - "src": "5757:46:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5757:46:4" - }, - { - "nodeType": "YulAssignment", - "src": "5812:28:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5830:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5835:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5826:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5826:14:4" - }, - "variableNames": [ - { - "name": "updatedPos", - "nodeType": "YulIdentifier", - "src": "5812:10:4" - } - ] - } - ] - }, - "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5720:6:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5728:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updatedPos", - "nodeType": "YulTypedName", - "src": "5736:10:4", - "type": "" - } - ], - "src": "5667:179:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5917:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5934:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5957:5:4" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "5939:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "5939:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5927:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5927:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5927:37:4" - } - ] - }, - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5905:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5912:3:4", - "type": "" - } - ], - "src": "5852:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6130:608:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6140:68:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6202:5:4" - } - ], - "functionName": { - "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulIdentifier", - "src": "6154:47:4" - }, - "nodeType": "YulFunctionCall", - "src": "6154:54:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "6144:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6217:93:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6298:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6303:6:4" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "6224:73:4" - }, - "nodeType": "YulFunctionCall", - "src": "6224:86:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6217:3:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6319:71:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6384:5:4" - } - ], - "functionName": { - "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulIdentifier", - "src": "6334:49:4" - }, - "nodeType": "YulFunctionCall", - "src": "6334:56:4" - }, - "variables": [ - { - "name": "baseRef", - "nodeType": "YulTypedName", - "src": "6323:7:4", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6399:21:4", - "value": { - "name": "baseRef", - "nodeType": "YulIdentifier", - "src": "6413:7:4" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "6403:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6489:224:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6503:34:4", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "6530:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "6524:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "6524:13:4" - }, - "variables": [ - { - "name": "elementValue0", - "nodeType": "YulTypedName", - "src": "6507:13:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6550:70:4", - "value": { - "arguments": [ - { - "name": "elementValue0", - "nodeType": "YulIdentifier", - "src": "6601:13:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6616:3:4" - } - ], - "functionName": { - "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", - "nodeType": "YulIdentifier", - "src": "6557:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "6557:63:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6550:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6633:70:4", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "6696:6:4" - } - ], - "functionName": { - "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulIdentifier", - "src": "6643:52:4" - }, - "nodeType": "YulFunctionCall", - "src": "6643:60:4" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "6633:6:4" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "6451:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6454:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "6448:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "6448:13:4" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "6462:18:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6464:14:4", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "6473:1:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6476:1:4", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6469:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6469:9:4" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "6464:1:4" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "6433:14:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6435:10:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6444:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "6439:1:4", - "type": "" - } - ] - } - ] - }, - "src": "6429:284:4" - }, - { - "nodeType": "YulAssignment", - "src": "6722:10:4", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6729:3:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6722:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6109:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "6116:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6125:3:4", - "type": "" - } - ], - "src": "6006:732:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6803:50:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6820:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6840:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bool", - "nodeType": "YulIdentifier", - "src": "6825:14:4" - }, - "nodeType": "YulFunctionCall", - "src": "6825:21:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6813:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "6813:34:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6813:34:4" - } - ] - }, - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6791:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "6798:3:4", - "type": "" - } - ], - "src": "6744:109:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6924:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6941:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6964:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "6946:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "6946:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6934:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "6934:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6934:37:4" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6912:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "6919:3:4", - "type": "" - } - ], - "src": "6859:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7066:74:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7083:3:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7126:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "7108:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "7108:24:4" - } - ], - "functionName": { - "name": "leftAlign_t_bytes32", - "nodeType": "YulIdentifier", - "src": "7088:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "7088:45:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7076:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "7076:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7076:58:4" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7054:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7061:3:4", - "type": "" - } - ], - "src": "6983:157:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7268:201:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7278:77:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7343:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7348:6:4" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "7285:57:4" - }, - "nodeType": "YulFunctionCall", - "src": "7285:70:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7278:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "7389:5:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7396:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7401:6:4" - } - ], - "functionName": { - "name": "copy_calldata_to_memory", - "nodeType": "YulIdentifier", - "src": "7365:23:4" - }, - "nodeType": "YulFunctionCall", - "src": "7365:43:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7365:43:4" - }, - { - "nodeType": "YulAssignment", - "src": "7417:46:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7428:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7455:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "7433:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "7433:29:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7424:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7424:39:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7417:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "7241:5:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7248:6:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7256:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "7264:3:4", - "type": "" - } - ], - "src": "7168:301:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7565:270:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "7575:52:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7621:5:4" - } - ], - "functionName": { - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "7589:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "7589:38:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7579:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7636:77:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7701:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7706:6:4" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "7643:57:4" - }, - "nodeType": "YulFunctionCall", - "src": "7643:70:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7636:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7748:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7755:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7744:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7744:16:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7762:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7767:6:4" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "7722:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "7722:52:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7722:52:4" - }, - { - "nodeType": "YulAssignment", - "src": "7783:46:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7794:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7821:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "7799:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "7799:29:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7790:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7790:39:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7783:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7546:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7553:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "7561:3:4", - "type": "" - } - ], - "src": "7475:360:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7933:272:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "7943:53:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7990:5:4" - } - ], - "functionName": { - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "7957:32:4" - }, - "nodeType": "YulFunctionCall", - "src": "7957:39:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7947:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8005:78:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8071:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8076:6:4" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8012:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "8012:71:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8005:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8118:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8125:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8114:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8114:16:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8132:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8137:6:4" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "8092:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "8092:52:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8092:52:4" - }, - { - "nodeType": "YulAssignment", - "src": "8153:46:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8164:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8191:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "8169:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "8169:29:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8160:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8160:39:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8153:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7914:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7921:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "7929:3:4", - "type": "" - } - ], - "src": "7841:364:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8357:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8367:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8433:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8438:2:4", - "type": "", - "value": "35" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8374:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "8374:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8367:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8539:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", - "nodeType": "YulIdentifier", - "src": "8450:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "8450:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8450:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "8552:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8563:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8568:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8559:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8559:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8552:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "8345:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8353:3:4", - "type": "" - } - ], - "src": "8211:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8729:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8739:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8805:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8810:2:4", - "type": "", - "value": "34" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8746:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "8746:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8739:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8911:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", - "nodeType": "YulIdentifier", - "src": "8822:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "8822:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8822:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "8924:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8935:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8940:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8931:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8931:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8924:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "8717:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8725:3:4", - "type": "" - } - ], - "src": "8583:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9101:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9111:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9177:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9182:2:4", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "9118:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "9118:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9111:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9283:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", - "nodeType": "YulIdentifier", - "src": "9194:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "9194:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9194:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "9296:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9307:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9312:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9303:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9303:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9296:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "9089:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "9097:3:4", - "type": "" - } - ], - "src": "8955:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9473:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9483:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9549:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9554:2:4", - "type": "", - "value": "18" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "9490:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "9490:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9483:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9655:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790", - "nodeType": "YulIdentifier", - "src": "9566:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "9566:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9566:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "9668:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9679:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9684:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9675:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9675:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9668:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "9461:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "9469:3:4", - "type": "" - } - ], - "src": "9327:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9845:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9855:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9921:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9926:2:4", - "type": "", - "value": "23" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "9862:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "9862:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9855:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10027:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", - "nodeType": "YulIdentifier", - "src": "9938:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "9938:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9938:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "10040:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10051:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10056:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10047:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10047:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10040:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "9833:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "9841:3:4", - "type": "" - } - ], - "src": "9699:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10217:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10227:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10293:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10298:2:4", - "type": "", - "value": "33" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "10234:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "10234:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10227:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10399:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", - "nodeType": "YulIdentifier", - "src": "10310:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "10310:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10310:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "10412:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10423:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10428:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10419:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10419:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10412:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10205:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10213:3:4", - "type": "" - } - ], - "src": "10071:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10589:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10599:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10665:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10670:2:4", - "type": "", - "value": "37" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "10606:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "10606:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10599:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10771:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", - "nodeType": "YulIdentifier", - "src": "10682:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "10682:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10682:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "10784:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10795:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10800:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10791:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10791:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10784:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10577:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10585:3:4", - "type": "" - } - ], - "src": "10443:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10961:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10971:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11037:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11042:2:4", - "type": "", - "value": "34" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "10978:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "10978:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10971:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11143:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774", - "nodeType": "YulIdentifier", - "src": "11054:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "11054:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "11054:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "11156:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11167:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11172:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11163:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "11163:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11156:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10949:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10957:3:4", - "type": "" - } - ], - "src": "10815:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11333:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11343:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11409:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11414:2:4", - "type": "", - "value": "36" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11350:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "11350:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11343:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11515:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", - "nodeType": "YulIdentifier", - "src": "11426:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "11426:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "11426:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "11528:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11539:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11544:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11535:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "11535:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11528:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11321:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "11329:3:4", - "type": "" - } - ], - "src": "11187:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11705:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11715:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11781:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11786:2:4", - "type": "", - "value": "27" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11722:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "11722:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11715:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11887:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db", - "nodeType": "YulIdentifier", - "src": "11798:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "11798:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "11798:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "11900:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11911:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11916:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11907:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "11907:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11900:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11693:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "11701:3:4", - "type": "" - } - ], - "src": "11559:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12077:220:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12087:74:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12153:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12158:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12094:58:4" - }, - "nodeType": "YulFunctionCall", - "src": "12094:67:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12087:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12259:3:4" - } - ], - "functionName": { - "name": "store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", - "nodeType": "YulIdentifier", - "src": "12170:88:4" - }, - "nodeType": "YulFunctionCall", - "src": "12170:93:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12170:93:4" - }, - { - "nodeType": "YulAssignment", - "src": "12272:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12283:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12288:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12279:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12279:12:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "12272:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12065:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "12073:3:4", - "type": "" - } - ], - "src": "11931:366:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12358:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12375:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12398:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "12380:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "12380:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12368:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12368:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12368:37:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12346:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12353:3:4", - "type": "" - } - ], - "src": "12303:108:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12482:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12499:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12522:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "12504:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "12504:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12492:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12492:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12492:37:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12470:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12477:3:4", - "type": "" - } - ], - "src": "12417:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12624:74:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12641:3:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12684:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "12666:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "12666:24:4" - } - ], - "functionName": { - "name": "leftAlign_t_uint256", - "nodeType": "YulIdentifier", - "src": "12646:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "12646:45:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12634:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12634:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12634:58:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12612:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12619:3:4", - "type": "" - } - ], - "src": "12541:157:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12765:51:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12782:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12803:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint8", - "nodeType": "YulIdentifier", - "src": "12787:15:4" - }, - "nodeType": "YulFunctionCall", - "src": "12787:22:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12775:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12775:35:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12775:35:4" - } - ] - }, - "name": "abi_encode_t_uint8_to_t_uint8_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12753:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12760:3:4", - "type": "" - } - ], - "src": "12704:112:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12966:253:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13039:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13048:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "12977:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "12977:75:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12977:75:4" - }, - { - "nodeType": "YulAssignment", - "src": "13061:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13072:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13077:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13068:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13068:12:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13061:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13152:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13161:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "13090:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "13090:75:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13090:75:4" - }, - { - "nodeType": "YulAssignment", - "src": "13174:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13185:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13190:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13181:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13181:12:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13174:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13203:10:4", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13210:3:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13203:3:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12937:3:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "12943:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12951:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "12962:3:4", - "type": "" - } - ], - "src": "12822:397:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13323:124:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13333:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13345:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13356:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13341:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13341:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13333:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13413:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13426:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13437:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13422:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13422:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "13369:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "13369:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13369:71:4" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13295:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13307:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13318:4:4", - "type": "" - } - ], - "src": "13225:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13579:206:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13589:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13601:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13612:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13597:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13597:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13589:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13669:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13682:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13693:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13678:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13678:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "13625:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "13625:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13625:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13750:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13763:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13774:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13759:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13759:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "13706:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "13706:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13706:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13543:9:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "13555:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13563:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13574:4:4", - "type": "" - } - ], - "src": "13453:332:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13939:225:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13949:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13961:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13972:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13957:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13957:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13949:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13996:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14007:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13992:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13992:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14015:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14021:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14011:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14011:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13985:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13985:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13985:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "14041:116:4", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14143:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14152:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "14049:93:4" - }, - "nodeType": "YulFunctionCall", - "src": "14049:108:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14041:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13911:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13923:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13934:4:4", - "type": "" - } - ], - "src": "13791:373:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14262:118:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14272:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14284:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14295:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14280:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14280:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14272:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14346:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14359:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14370:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14355:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14355:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "14308:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "14308:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "14308:65:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14234:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14246:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14257:4:4", - "type": "" - } - ], - "src": "14170:210:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14698:768:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14708:27:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14720:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14731:3:4", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14716:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14716:19:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14708:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14789:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14802:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14813:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14798:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14798:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "14745:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "14745:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "14745:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "14870:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14883:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14894:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14879:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14879:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "14826:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "14826:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "14826:72:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14919:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14930:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14915:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14915:18:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14939:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14945:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14935:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "14935:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14908:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "14908:48:4" - }, - "nodeType": "YulExpressionStatement", - "src": "14908:48:4" - }, - { - "nodeType": "YulAssignment", - "src": "14965:94:4", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "15037:6:4" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "15045:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15054:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "14973:63:4" - }, - "nodeType": "YulFunctionCall", - "src": "14973:86:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14965:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "15113:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15126:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15137:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15122:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15122:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "15069:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "15069:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "15069:72:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "15195:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15208:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15219:3:4", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15204:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15204:19:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "15151:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "15151:73:4" - }, - "nodeType": "YulExpressionStatement", - "src": "15151:73:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15245:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15256:3:4", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15241:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15241:19:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15266:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15272:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15262:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15262:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15234:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "15234:49:4" - }, - "nodeType": "YulExpressionStatement", - "src": "15234:49:4" - }, - { - "nodeType": "YulAssignment", - "src": "15292:84:4", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "15362:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15371:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "15300:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "15300:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15292:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "15430:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15443:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15454:3:4", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15439:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15439:19:4" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "15386:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "15386:73:4" - }, - "nodeType": "YulExpressionStatement", - "src": "15386:73:4" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint256_t_bytes_calldata_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__to_t_bytes32_t_uint256_t_bytes_memory_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14614:9:4", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "14626:6:4", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "14634:6:4", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "14642:6:4", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "14650:6:4", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "14658:6:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "14666:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "14674:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14682:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14693:4:4", - "type": "" - } - ], - "src": "14386:1080:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15588:193:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15598:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15610:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15621:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15606:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15606:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15598:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15645:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15656:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15641:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15641:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15664:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15670:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15660:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15660:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15634:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "15634:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "15634:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "15690:84:4", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15760:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15769:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "15698:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "15698:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15690:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15560:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15572:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15583:4:4", - "type": "" - } - ], - "src": "15472:309:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15905:195:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15915:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15927:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15938:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15923:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15923:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15915:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15962:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15973:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15958:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15958:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15981:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15987:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15977:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "15977:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15951:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "15951:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "15951:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "16007:86:4", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16079:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16088:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "16015:63:4" - }, - "nodeType": "YulFunctionCall", - "src": "16015:78:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16007:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15877:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15889:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15900:4:4", - "type": "" - } - ], - "src": "15787:313:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16277:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16287:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16299:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16310:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16295:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "16295:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16287:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16334:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16345:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16330:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "16330:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16353:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16359:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16349:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "16349:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16323:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "16323:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "16323:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "16379:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16513:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "16387:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "16387:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16379:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16257:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16272:4:4", - "type": "" - } - ], - "src": "16106:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16702:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16712:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16724:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16735:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16720:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "16720:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16712:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16759:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16770:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16755:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "16755:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16778:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16784:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16774:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "16774:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16748:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "16748:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "16748:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "16804:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16938:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "16812:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "16812:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16804:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16682:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16697:4:4", - "type": "" - } - ], - "src": "16531:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17127:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17137:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17149:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17160:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17145:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17145:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17137:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17184:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17195:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17180:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17180:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17203:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17209:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17199:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17199:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17173:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "17173:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "17173:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "17229:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17363:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "17237:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "17237:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17229:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17107:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "17122:4:4", - "type": "" - } - ], - "src": "16956:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17552:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17562:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17574:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17585:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17570:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17570:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17562:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17609:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17620:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17605:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17605:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17628:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17634:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17624:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17624:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17598:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "17598:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "17598:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "17654:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17788:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "17662:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "17662:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17654:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17532:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "17547:4:4", - "type": "" - } - ], - "src": "17381:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17977:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17987:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17999:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18010:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17995:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "17995:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17987:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18034:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18045:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18030:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18030:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18053:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18059:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18049:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18049:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18023:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "18023:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "18023:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "18079:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18213:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "18087:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "18087:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18079:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17957:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "17972:4:4", - "type": "" - } - ], - "src": "17806:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18402:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18412:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18424:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18435:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18420:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18420:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18412:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18459:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18470:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18455:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18455:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18478:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18484:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18474:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18474:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18448:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "18448:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "18448:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "18504:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18638:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "18512:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "18512:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18504:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18382:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "18397:4:4", - "type": "" - } - ], - "src": "18231:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18827:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18837:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18849:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18860:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18845:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18845:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18837:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18884:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18895:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18880:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18880:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18903:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18909:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18899:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "18899:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18873:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "18873:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "18873:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "18929:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19063:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "18937:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "18937:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18929:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18807:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "18822:4:4", - "type": "" - } - ], - "src": "18656:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19252:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19262:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19274:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19285:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19270:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "19270:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19262:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19309:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19320:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19305:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "19305:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19328:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19334:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "19324:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "19324:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19298:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "19298:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "19298:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "19354:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19488:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "19362:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "19362:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19354:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "19232:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "19247:4:4", - "type": "" - } - ], - "src": "19081:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19677:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19687:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19699:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19710:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19695:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "19695:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19687:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19734:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19745:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19730:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "19730:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19753:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19759:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "19749:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "19749:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19723:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "19723:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "19723:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "19779:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19913:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "19787:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "19787:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19779:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "19657:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "19672:4:4", - "type": "" - } - ], - "src": "19506:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20102:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20112:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20124:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20135:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20120:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20120:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20112:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20159:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20170:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20155:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20155:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20178:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20184:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "20174:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20174:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20148:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "20148:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "20148:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "20204:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20338:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "20212:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "20212:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20204:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20082:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20097:4:4", - "type": "" - } - ], - "src": "19931:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20527:248:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20537:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20549:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20560:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20545:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20545:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20537:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20584:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20595:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20580:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20580:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20603:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20609:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "20599:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20599:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20573:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "20573:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "20573:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "20629:139:4", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20763:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "20637:124:4" - }, - "nodeType": "YulFunctionCall", - "src": "20637:131:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20629:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20507:9:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20522:4:4", - "type": "" - } - ], - "src": "20356:419:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20879:124:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20889:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20901:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20912:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20897:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20897:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20889:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20969:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20982:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20993:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20978:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "20978:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "20925:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "20925:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "20925:71:4" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20851:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "20863:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20874:4:4", - "type": "" - } - ], - "src": "20781:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21135:206:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21145:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21157:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21168:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21153:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21153:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21145:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21225:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21238:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21249:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21234:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21234:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "21181:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "21181:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "21181:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "21306:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21319:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21330:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21315:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21315:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "21262:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "21262:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "21262:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21099:9:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "21111:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "21119:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21130:4:4", - "type": "" - } - ], - "src": "21009:332:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21519:357:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21529:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21541:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21552:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21537:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21537:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21529:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21609:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21622:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21633:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21618:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21618:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "21565:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "21565:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "21565:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "21690:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21703:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21714:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21699:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21699:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "21646:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "21646:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "21646:72:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21739:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21750:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21735:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21735:18:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21759:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21765:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "21755:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "21755:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21728:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "21728:48:4" - }, - "nodeType": "YulExpressionStatement", - "src": "21728:48:4" - }, - { - "nodeType": "YulAssignment", - "src": "21785:84:4", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "21855:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21864:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "21793:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "21793:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21785:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21475:9:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "21487:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "21495:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "21503:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21514:4:4", - "type": "" - } - ], - "src": "21347:529:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22092:454:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22102:27:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22114:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22125:3:4", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22110:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22110:19:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22102:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "22183:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22196:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22207:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22192:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22192:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "22139:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "22139:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22139:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "22264:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22277:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22288:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22273:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22273:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "22220:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "22220:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22220:72:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "22346:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22359:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22370:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22355:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22355:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "22302:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "22302:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22302:72:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "22428:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22441:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22452:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22437:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22437:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "22384:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "22384:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22384:72:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "22510:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22523:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22534:3:4", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22519:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22519:19:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "22466:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "22466:73:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22466:73:4" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__to_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "22032:9:4", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "22044:6:4", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "22052:6:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "22060:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "22068:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "22076:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "22087:4:4", - "type": "" - } - ], - "src": "21882:664:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22646:120:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22656:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22668:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22679:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22664:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22664:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22656:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "22732:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22745:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22756:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22741:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "22741:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint8_to_t_uint8_fromStack", - "nodeType": "YulIdentifier", - "src": "22692:39:4" - }, - "nodeType": "YulFunctionCall", - "src": "22692:67:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22692:67:4" - } - ] - }, - "name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "22618:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "22630:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "22641:4:4", - "type": "" - } - ], - "src": "22552:214:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22813:88:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22823:30:4", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_unbounded", - "nodeType": "YulIdentifier", - "src": "22833:18:4" - }, - "nodeType": "YulFunctionCall", - "src": "22833:20:4" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "22823:6:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "22882:6:4" - }, - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "22890:4:4" - } - ], - "functionName": { - "name": "finalize_allocation", - "nodeType": "YulIdentifier", - "src": "22862:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "22862:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "22862:33:4" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "22797:4:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "22806:6:4", - "type": "" - } - ], - "src": "22772:129:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22947:35:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22957:19:4", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22973:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "22967:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "22967:9:4" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "22957:6:4" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "22940:6:4", - "type": "" - } - ], - "src": "22907:75:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23054:241:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "23159:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "23161:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "23161:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "23161:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "23131:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23139:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "23128:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "23128:30:4" - }, - "nodeType": "YulIf", - "src": "23125:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "23191:37:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "23221:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "23199:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "23199:29:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "23191:4:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "23265:23:4", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "23277:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23283:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23273:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "23273:15:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "23265:4:4" - } - ] - } - ] - }, - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "23038:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "23049:4:4", - "type": "" - } - ], - "src": "22988:307:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23373:60:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23383:11:4", - "value": { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "23391:3:4" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "23383:4:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "23404:22:4", - "value": { - "arguments": [ - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "23416:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23421:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23412:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "23412:14:4" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "23404:4:4" - } - ] - } - ] - }, - "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "23360:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "23368:4:4", - "type": "" - } - ], - "src": "23301:132:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23513:40:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23524:22:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "23540:5:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "23534:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "23534:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "23524:6:4" - } - ] - } - ] - }, - "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "23496:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "23506:6:4", - "type": "" - } - ], - "src": "23439:114:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23617:40:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23628:22:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "23644:5:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "23638:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "23638:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "23628:6:4" - } - ] - } - ] - }, - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "23600:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "23610:6:4", - "type": "" - } - ], - "src": "23559:98:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23722:40:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23733:22:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "23749:5:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "23743:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "23743:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "23733:6:4" - } - ] - } - ] - }, - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "23705:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "23715:6:4", - "type": "" - } - ], - "src": "23663:99:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23843:38:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23853:22:4", - "value": { - "arguments": [ - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "23865:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23870:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23861:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "23861:14:4" - }, - "variableNames": [ - { - "name": "next", - "nodeType": "YulIdentifier", - "src": "23853:4:4" - } - ] - } - ] - }, - "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "23830:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "next", - "nodeType": "YulTypedName", - "src": "23838:4:4", - "type": "" - } - ], - "src": "23768:113:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23998:73:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24015:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "24020:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24008:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "24008:19:4" - }, - "nodeType": "YulExpressionStatement", - "src": "24008:19:4" - }, - { - "nodeType": "YulAssignment", - "src": "24036:29:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24055:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24060:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24051:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "24051:14:4" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "24036:11:4" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "23970:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "23975:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "23986:11:4", - "type": "" - } - ], - "src": "23887:184:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24172:73:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24189:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "24194:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24182:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "24182:19:4" - }, - "nodeType": "YulExpressionStatement", - "src": "24182:19:4" - }, - { - "nodeType": "YulAssignment", - "src": "24210:29:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24229:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24234:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24225:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "24225:14:4" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "24210:11:4" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "24144:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "24149:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "24160:11:4", - "type": "" - } - ], - "src": "24077:168:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24347:73:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24364:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "24369:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24357:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "24357:19:4" - }, - "nodeType": "YulExpressionStatement", - "src": "24357:19:4" - }, - { - "nodeType": "YulAssignment", - "src": "24385:29:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24404:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24409:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24400:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "24400:14:4" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "24385:11:4" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "24319:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "24324:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "24335:11:4", - "type": "" - } - ], - "src": "24251:169:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24470:261:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "24480:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24503:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "24485:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "24485:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24480:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "24514:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24537:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "24519:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "24519:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24514:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24677:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "24679:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "24679:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "24679:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24598:1:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24605:66:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24673:1:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "24601:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "24601:74:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "24595:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "24595:81:4" - }, - "nodeType": "YulIf", - "src": "24592:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "24709:16:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24720:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24723:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24716:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "24716:9:4" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "24709:3:4" - } - ] - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "24457:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "24460:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "24466:3:4", - "type": "" - } - ], - "src": "24426:305:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24779:143:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "24789:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24812:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "24794:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "24794:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24789:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "24823:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24846:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "24828:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "24828:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24823:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24870:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "24872:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "24872:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "24872:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24867:1:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "24860:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "24860:9:4" - }, - "nodeType": "YulIf", - "src": "24857:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "24902:14:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24911:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "24914:1:4" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "24907:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "24907:9:4" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "24902:1:4" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "24768:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "24771:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "24777:1:4", - "type": "" - } - ], - "src": "24737:185:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24976:300:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "24986:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25009:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "24991:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "24991:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "24986:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "25020:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25043:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25025:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "25025:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25020:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25218:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "25220:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "25220:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "25220:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25130:1:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25123:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "25123:9:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25116:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "25116:17:4" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25138:1:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25145:66:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25213:1:4" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "25141:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "25141:74:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25135:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "25135:81:4" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "25112:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "25112:105:4" - }, - "nodeType": "YulIf", - "src": "25109:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "25250:20:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25265:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25268:1:4" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "25261:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "25261:9:4" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "25250:7:4" - } - ] - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "24959:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "24962:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "24968:7:4", - "type": "" - } - ], - "src": "24928:348:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25327:146:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25337:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25360:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25342:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "25342:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25337:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "25371:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25394:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25376:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "25376:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25371:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25418:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "25420:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "25420:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "25420:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25412:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25415:1:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "25409:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "25409:8:4" - }, - "nodeType": "YulIf", - "src": "25406:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "25450:17:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25462:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25465:1:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "25458:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "25458:9:4" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "25450:4:4" - } - ] - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "25313:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "25316:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "25322:4:4", - "type": "" - } - ], - "src": "25282:191:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25524:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25534:35:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25563:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "25545:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "25545:24:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "25534:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "25506:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "25516:7:4", - "type": "" - } - ], - "src": "25479:96:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25623:48:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25633:32:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25658:5:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25651:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "25651:13:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25644:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "25644:21:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "25633:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "25605:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "25615:7:4", - "type": "" - } - ], - "src": "25581:90:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25722:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25732:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25743:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "25732:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "25704:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "25714:7:4", - "type": "" - } - ], - "src": "25677:77:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25805:81:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25815:65:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25830:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25837:42:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "25826:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "25826:54:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "25815:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "25787:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "25797:7:4", - "type": "" - } - ], - "src": "25760:126:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25937:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25947:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25958:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "25947:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "25919:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "25929:7:4", - "type": "" - } - ], - "src": "25892:77:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26018:43:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26028:27:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "26043:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26050:4:4", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "26039:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26039:16:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "26028:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "26000:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "26010:7:4", - "type": "" - } - ], - "src": "25975:86:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26118:103:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "26141:3:4" - }, - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "26146:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26151:6:4" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "26128:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "26128:30:4" - }, - "nodeType": "YulExpressionStatement", - "src": "26128:30:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "26199:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26204:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26195:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26195:16:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26213:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26188:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "26188:27:4" - }, - "nodeType": "YulExpressionStatement", - "src": "26188:27:4" - } - ] - }, - "name": "copy_calldata_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "26100:3:4", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "26105:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "26110:6:4", - "type": "" - } - ], - "src": "26067:154:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26276:258:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "26286:10:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26295:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "26290:1:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26355:63:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "26380:3:4" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "26385:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26376:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26376:11:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "26399:3:4" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "26404:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26395:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26395:11:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "26389:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "26389:18:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26369:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "26369:39:4" - }, - "nodeType": "YulExpressionStatement", - "src": "26369:39:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "26316:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26319:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "26313:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "26313:13:4" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "26327:19:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26329:15:4", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "26338:1:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26341:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26334:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26334:10:4" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "26329:1:4" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "26309:3:4", - "statements": [] - }, - "src": "26305:113:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26452:76:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "26502:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26507:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26498:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26498:16:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26516:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26491:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "26491:27:4" - }, - "nodeType": "YulExpressionStatement", - "src": "26491:27:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "26433:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26436:6:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "26430:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "26430:13:4" - }, - "nodeType": "YulIf", - "src": "26427:2:4" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "26258:3:4", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "26263:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "26268:6:4", - "type": "" - } - ], - "src": "26227:307:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26591:269:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26601:22:4", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "26615:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26621:1:4", - "type": "", - "value": "2" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "26611:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26611:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26601:6:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "26632:38:4", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "26662:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26668:1:4", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "26658:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26658:12:4" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "26636:18:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26709:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26723:27:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26737:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26745:4:4", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "26733:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26733:17:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26723:6:4" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "26689:18:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "26682:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "26682:26:4" - }, - "nodeType": "YulIf", - "src": "26679:2:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26812:42:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x22", - "nodeType": "YulIdentifier", - "src": "26826:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "26826:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "26826:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "26776:18:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26799:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26807:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "26796:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "26796:14:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "26773:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "26773:38:4" - }, - "nodeType": "YulIf", - "src": "26770:2:4" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "26575:4:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "26584:6:4", - "type": "" - } - ], - "src": "26540:320:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26909:238:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "26919:58:4", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "26941:6:4" - }, - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "26971:4:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "26949:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "26949:27:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26937:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "26937:40:4" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "26923:10:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27088:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "27090:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "27090:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27090:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "27031:10:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27043:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "27028:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "27028:34:4" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "27067:10:4" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "27079:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "27064:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "27064:22:4" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "27025:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "27025:62:4" - }, - "nodeType": "YulIf", - "src": "27022:2:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27126:2:4", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "27130:10:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27119:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27119:22:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27119:22:4" - } - ] - }, - "name": "finalize_allocation", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "26895:6:4", - "type": "" - }, - { - "name": "size", - "nodeType": "YulTypedName", - "src": "26903:4:4", - "type": "" - } - ], - "src": "26866:281:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27196:190:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27206:33:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27233:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "27215:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "27215:24:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27206:5:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27329:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "27331:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "27331:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27331:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27254:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27261:66:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "27251:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "27251:77:4" - }, - "nodeType": "YulIf", - "src": "27248:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "27360:20:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27371:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27378:1:4", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27367:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "27367:13:4" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "27360:3:4" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "27182:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "27192:3:4", - "type": "" - } - ], - "src": "27153:233:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27439:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27449:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27460:5:4" - }, - "variableNames": [ - { - "name": "aligned", - "nodeType": "YulIdentifier", - "src": "27449:7:4" - } - ] - } - ] - }, - "name": "leftAlign_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "27421:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "aligned", - "nodeType": "YulTypedName", - "src": "27431:7:4", - "type": "" - } - ], - "src": "27392:79:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27524:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27534:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27545:5:4" - }, - "variableNames": [ - { - "name": "aligned", - "nodeType": "YulIdentifier", - "src": "27534:7:4" - } - ] - } - ] - }, - "name": "leftAlign_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "27506:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "aligned", - "nodeType": "YulTypedName", - "src": "27516:7:4", - "type": "" - } - ], - "src": "27477:79:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27590:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27607:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27610:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27600:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27600:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27600:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27704:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27707:4:4", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27697:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27697:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27697:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27728:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27731:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "27721:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27721:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27721:15:4" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "27562:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27776:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27793:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27796:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27786:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27786:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27786:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27890:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27893:4:4", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27883:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27883:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27883:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27914:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27917:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "27907:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27907:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27907:15:4" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "27748:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27962:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27979:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27982:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27972:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "27972:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "27972:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28076:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28079:4:4", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28069:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28069:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28069:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28100:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28103:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "28093:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28093:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28093:15:4" - } - ] - }, - "name": "panic_error_0x22", - "nodeType": "YulFunctionDefinition", - "src": "27934:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28148:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28165:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28168:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28158:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28158:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28158:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28262:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28265:4:4", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28255:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28255:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28255:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28286:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28289:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "28279:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28279:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28279:15:4" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "28120:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28354:54:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "28364:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "28382:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28389:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28378:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28378:14:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28398:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "28394:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28394:7:4" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "28374:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28374:28:4" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "28364:6:4" - } - ] - } - ] - }, - "name": "round_up_to_mul_of_32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "28337:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "28347:6:4", - "type": "" - } - ], - "src": "28306:102:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28520:116:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "28542:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28550:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28538:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28538:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "28554:34:4", - "type": "", - "value": "ERC20: transfer to the zero addr" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28531:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28531:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28531:58:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "28610:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28618:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28606:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28606:15:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "28623:5:4", - "type": "", - "value": "ess" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28599:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28599:30:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28599:30:4" - } - ] - }, - "name": "store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "28512:6:4", - "type": "" - } - ], - "src": "28414:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28748:115:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "28770:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28778:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28766:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28766:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "28782:34:4", - "type": "", - "value": "ERC20: approve to the zero addre" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28759:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28759:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28759:58:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "28838:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28846:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28834:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28834:15:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "28851:4:4", - "type": "", - "value": "ss" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28827:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28827:29:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28827:29:4" - } - ] - }, - "name": "store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "28740:6:4", - "type": "" - } - ], - "src": "28642:221:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28975:73:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "28997:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29005:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28993:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "28993:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29009:31:4", - "type": "", - "value": "id must be hash of bytes data" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28986:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "28986:55:4" - }, - "nodeType": "YulExpressionStatement", - "src": "28986:55:4" - } - ] - }, - "name": "store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "28967:6:4", - "type": "" - } - ], - "src": "28869:179:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29160:62:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29182:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29190:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29178:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29178:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29194:20:4", - "type": "", - "value": "7 days didn't pass" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29171:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29171:44:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29171:44:4" - } - ] - }, - "name": "store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "29152:6:4", - "type": "" - } - ], - "src": "29054:168:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29334:67:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29356:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29364:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29352:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29352:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29368:25:4", - "type": "", - "value": "nonce should be correct" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29345:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29345:49:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29345:49:4" - } - ] - }, - "name": "store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "29326:6:4", - "type": "" - } - ], - "src": "29228:173:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29513:114:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29535:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29543:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29531:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29531:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29547:34:4", - "type": "", - "value": "ERC20: burn from the zero addres" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29524:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29524:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29524:58:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29603:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29611:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29599:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29599:15:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29616:3:4", - "type": "", - "value": "s" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29592:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29592:28:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29592:28:4" - } - ] - }, - "name": "store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "29505:6:4", - "type": "" - } - ], - "src": "29407:220:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29739:118:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29761:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29769:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29757:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29757:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29773:34:4", - "type": "", - "value": "ERC20: transfer from the zero ad" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29750:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29750:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29750:58:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29829:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29837:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29825:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29825:15:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "29842:7:4", - "type": "", - "value": "dress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29818:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29818:32:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29818:32:4" - } - ] - }, - "name": "store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "29731:6:4", - "type": "" - } - ], - "src": "29633:224:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29969:115:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "29991:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29999:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29987:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "29987:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "30003:34:4", - "type": "", - "value": "reporter not locked for withdraw" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29980:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "29980:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "29980:58:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "30059:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30067:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30055:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "30055:15:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "30072:4:4", - "type": "", - "value": "al" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30048:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30048:29:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30048:29:4" - } - ] - }, - "name": "store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "29961:6:4", - "type": "" - } - ], - "src": "29863:221:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30196:117:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "30218:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30226:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30214:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "30214:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "30230:34:4", - "type": "", - "value": "ERC20: approve from the zero add" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30207:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30207:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30207:58:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "30286:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30294:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30282:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "30282:15:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "30299:6:4", - "type": "", - "value": "ress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30275:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30275:31:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30275:31:4" - } - ] - }, - "name": "store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "30188:6:4", - "type": "" - } - ], - "src": "30090:223:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30425:71:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "30447:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30455:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30443:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "30443:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "30459:29:4", - "type": "", - "value": "insufficient staked balance" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30436:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30436:53:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30436:53:4" - } - ] - }, - "name": "store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "30417:6:4", - "type": "" - } - ], - "src": "30319:177:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30608:75:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "30630:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30638:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30626:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "30626:14:4" - }, - { - "kind": "string", - "nodeType": "YulLiteral", - "src": "30642:33:4", - "type": "", - "value": "ERC20: mint to the zero address" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30619:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30619:57:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30619:57:4" - } - ] - }, - "name": "store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "30600:6:4", - "type": "" - } - ], - "src": "30502:181:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30732:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "30789:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30798:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30801:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "30791:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30791:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30791:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30755:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30780:5:4" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "30762:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "30762:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "30752:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "30752:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "30745:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30745:43:4" - }, - "nodeType": "YulIf", - "src": "30742:2:4" - } - ] - }, - "name": "validator_revert_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "30725:5:4", - "type": "" - } - ], - "src": "30689:122:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30860:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "30917:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30926:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30929:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "30919:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30919:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "30919:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30883:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30908:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "30890:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "30890:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "30880:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "30880:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "30873:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "30873:43:4" - }, - "nodeType": "YulIf", - "src": "30870:2:4" - } - ] - }, - "name": "validator_revert_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "30853:5:4", - "type": "" - } - ], - "src": "30817:122:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30988:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "31045:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31054:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31057:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "31047:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "31047:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "31047:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "31011:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "31036:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "31018:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "31018:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "31008:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "31008:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "31001:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "31001:43:4" - }, - "nodeType": "YulIf", - "src": "30998:2:4" - } - ] - }, - "name": "validator_revert_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "30981:5:4", - "type": "" - } - ], - "src": "30945:122:4" - } - ] - }, - "contents": "{\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_calldata_to_memory(src, dst, length)\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_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert(0, 0) }\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\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_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes_calldata_ptrt_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value1, value2 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value4 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value2 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 35)\n store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 29)\n store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 18)\n store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256_t_bytes_calldata_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__to_t_bytes32_t_uint256_t_bytes_memory_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart , value7, value6, value5, value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 224)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value2, value3, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 96))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value5, add(headStart, 128))\n\n mstore(add(headStart, 160), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value6, tail)\n\n abi_encode_t_address_to_t_address_fromStack(value7, add(headStart, 192))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f__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_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029__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_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f__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_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790__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_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494__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_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f__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_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea__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_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774__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_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208__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_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db__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_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e__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_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack( tail)\n\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 abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__to_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 128))\n\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\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 checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: transfer to the zero addr\")\n\n mstore(add(memPtr, 32), \"ess\")\n\n }\n\n function store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: approve to the zero addre\")\n\n mstore(add(memPtr, 32), \"ss\")\n\n }\n\n function store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f(memPtr) {\n\n mstore(add(memPtr, 0), \"id must be hash of bytes data\")\n\n }\n\n function store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790(memPtr) {\n\n mstore(add(memPtr, 0), \"7 days didn't pass\")\n\n }\n\n function store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494(memPtr) {\n\n mstore(add(memPtr, 0), \"nonce should be correct\")\n\n }\n\n function store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: burn from the zero addres\")\n\n mstore(add(memPtr, 32), \"s\")\n\n }\n\n function store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: transfer from the zero ad\")\n\n mstore(add(memPtr, 32), \"dress\")\n\n }\n\n function store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774(memPtr) {\n\n mstore(add(memPtr, 0), \"reporter not locked for withdraw\")\n\n mstore(add(memPtr, 32), \"al\")\n\n }\n\n function store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: approve from the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db(memPtr) {\n\n mstore(add(memPtr, 0), \"insufficient staked balance\")\n\n }\n\n function store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: mint to the zero address\")\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", - "id": 4, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": {}, - "linkReferences": {}, - "object": "608060405234801561001057600080fd5b50600436106102065760003560e01c806377b03e0d1161011a578063c5958af9116100ad578063ce5e11bf1161007c578063ce5e11bf14610666578063dd62ed3e14610696578063e07c5486146106c6578063ef0234ad146106f6578063f25133f31461071257610206565b8063c5958af9146105cc578063c6384071146105fc578063c979fe9f1461061a578063cb82cc8f1461064a57610206565b8063a1e588a5116100e9578063a1e588a514610545578063a9059cbb14610576578063b86d1d63146105a6578063bed9d861146105c257610206565b806377b03e0d146104bd5780638929f4c6146104ed57806395d89b411461050957806396426d971461052757610206565b8063313ce5671161019d578063699f200f1161016c578063699f200f146103ed57806369d43bd31461041d5780636fd4f2291461043b57806370a0823114610459578063733bdef01461048957610206565b8063313ce567146103535780635eaa9ced14610371578063602bf2271461038d57806364473df2146103bd57610206565b80631f379acc116101d95780631f379acc146102a7578063217053c0146102c357806323b872dd146102f3578063248638e51461032357610206565b806306fdde031461020b578063091b50ff14610229578063095ea7b31461025957806318160ddd14610289575b600080fd5b610213610742565b60405161022091906128ca565b60405180910390f35b610243600480360381019061023e9190612392565b6107d4565b60405161025091906128a8565b60405180910390f35b610273600480360381019061026e9190612295565b610881565b604051610280919061280e565b60405180910390f35b610291610898565b60405161029e9190612a4c565b60405180910390f35b6102c160048036038101906102bc9190612392565b6108a2565b005b6102dd60048036038101906102d89190612392565b6109a6565b6040516102ea91906127a8565b60405180910390f35b61030d60048036038101906103089190612246565b6109e8565b60405161031a919061280e565b60405180910390f35b61033d600480360381019061033891906122d1565b610a92565b60405161034a91906127ec565b60405180910390f35b61035b610afd565b6040516103689190612b21565b60405180910390f35b61038b600480360381019061038691906122fa565b610b14565b005b6103a760048036038101906103a291906122d1565b610e01565b6040516103b49190612a4c565b60405180910390f35b6103d760048036038101906103d29190612392565b610e19565b6040516103e4919061280e565b60405180910390f35b610407600480360381019061040291906122d1565b610e48565b60405161041491906127a8565b60405180910390f35b610425610e7b565b6040516104329190612a4c565b60405180910390f35b610443610e81565b6040516104509190612a4c565b60405180910390f35b610473600480360381019061046e91906121e1565b610e87565b6040516104809190612a4c565b60405180910390f35b6104a3600480360381019061049e91906121e1565b610ed0565b6040516104b4959493929190612ace565b60405180910390f35b6104d760048036038101906104d291906122d1565b61103a565b6040516104e49190612a4c565b60405180910390f35b61050760048036038101906105029190612435565b61105a565b005b610511611160565b60405161051e91906128ca565b60405180910390f35b61052f6111f2565b60405161053c9190612a4c565b60405180910390f35b61055f600480360381019061055a91906122d1565b6111fe565b60405161056d929190612a67565b60405180910390f35b610590600480360381019061058b9190612295565b61128e565b60405161059d919061280e565b60405180910390f35b6105c060048036038101906105bb91906121e1565b6112a5565b005b6105ca6112bb565b005b6105e660048036038101906105e19190612392565b6113ed565b6040516105f391906128a8565b60405180910390f35b6106046114a4565b6040516106119190612a4c565b60405180910390f35b610634600480360381019061062f9190612392565b6114aa565b6040516106419190612a4c565b60405180910390f35b610664600480360381019061065f9190612435565b6114db565b005b610680600480360381019061067b9190612392565b6115ff565b60405161068d9190612a4c565b60405180910390f35b6106b060048036038101906106ab919061220a565b611699565b6040516106bd9190612a4c565b60405180910390f35b6106e060048036038101906106db9190612392565b611720565b6040516106ed91906127a8565b60405180910390f35b610710600480360381019061070b91906123ce565b61176f565b005b61072c60048036038101906107279190612392565b611899565b6040516107399190612a4c565b60405180910390f35b6060600e805461075190612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612db9565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b600660205281600052604060002060205280600052604060002060009150915050805461080090612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461082c90612db9565b80156108795780601f1061084e57610100808354040283529160200191610879565b820191906000526020600020905b81548152906001019060200180831161085c57829003601f168201915b505050505081565b600061088e3384846118ca565b6001905092915050565b6000600d54905090565b6040518060200160405280600081525060066000848152602001908152602001600020600083815260200190815260200160002090805190602001906108e9929190611fc7565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600c600081548092919061093990612e1c565b919050555060076000838360405160200161095592919061277c565b604051602081830303815290604052805190602001208152602001908152602001600020600c5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109f5848484611a95565b610a87843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a829190612ce4565b6118ca565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610af157602002820191906000526020600020905b815481526020019060010190808311610add575b50505050509050919050565b6000601060009054906101000a900460ff16905090565b60046000868152602001908152602001600020805490508214610b6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b639061296c565b60405180910390fd5b8080519060200120851480610b85575060648560001c11155b610bc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbb9061292c565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610bf792919061204d565b5060046000868152602001908152602001600020429080600181540180825580915050600190039060005260206000200160009091909190915055600080610c3e876111fe565b9150915060008282610c509190612c03565b1115610c6d57610c6b338383610c669190612c03565b61128e565b505b42600a8190555081600b6000828254610c869190612ce4565b92505081905550600060056000898152602001908152602001600020819055503360026000898152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610da390612e1c565b91905055507fab1d593f8e2ecb165106e30a39db6769078d35c3fdbb110f24932f0d7af68c29874288888587610dd99190612c03565b898933604051610df0989796959493929190612829565b60405180910390a150505050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905081816001015410156110e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110db90612a0c565b60405180910390fd5b428160000181905550818160020160008282546111019190612c03565b925050819055508181600101600082825461111c9190612ce4565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516111549291906127c3565b60405180910390a15050565b6060600f805461116f90612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461119b90612db9565b80156111e85780601f106111bd576101008083540402835291602001916111e8565b820191906000526020600020905b8154815290600101906020018083116111cb57829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000806000600a54426112119190612ce4565b9050600061012c6706f05b59d3b200008361122c9190612c8a565b6112369190612c59565b9050600b54816112469190612c03565b61124f30610e87565b101561126e57600b5461126130610e87565b61126b9190612ce4565b90505b600560008681526020019081526020016000205481935093505050915091565b600061129b338484611a95565b6001905092915050565b6112b881683635c9adc5dea00000611c8b565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426113129190612ce4565b1015611353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134a9061294c565b60405180910390fd5b600081600201541161139a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611391906129cc565b60405180910390fd5b6113a930338360020154611a95565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec336040516113e291906127a8565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461141e90612db9565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612db9565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b5050505050905092915050565b600c5481565b600760205281600052604060002081815481106114c657600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816002015411156115895781816002015410611556578181600201600082825461154a9190612ce4565b92505081905550611584565b611570333083600201548561156b9190612ce4565b611dd4565b61157957600080fd5b600081600201819055505b61159e565b611594333084611dd4565b61159d57600080fd5b5b428160000181905550818160010160008282546115bb9190612c03565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516115f39291906127c3565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061162a5750828111155b15611639576000915050611693565b600460008581526020019081526020016000208381548110611684577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b8080519060200120831480611788575060648360001c11155b6117c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117be9061292c565b60405180910390fd5b6117d2333084611a95565b6002826117df9190612c59565b91506117eb3083611e7e565b81600b60008282546117fd9190612c03565b92505081905550816005600085815260200190815260200160002060008282546118279190612c03565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff58460056000888152602001908152602001600020548560405161188c93929190612a90565b60405180910390a3505050565b600460205281600052604060002081815481106118b557600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561193a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611931906129ec565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156119aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119a19061290c565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611a889190612a4c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611afc906129ac565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6c906128ec565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bc49190612ce4565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c1a9190612c03565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c7e9190612a4c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611cfb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cf290612a2c565b60405180910390fd5b80600d6000828254611d0d9190612c03565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d639190612c03565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611dc89190612a4c565b60405180910390a35050565b6000611de1848484611a95565b611e73843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e6e9190612ce4565b6118ca565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee59061298c565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f3d9190612ce4565b9250508190555080600d6000828254611f569190612ce4565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fbb9190612a4c565b60405180910390a35050565b828054611fd390612db9565b90600052602060002090601f016020900481019282611ff5576000855561203c565b82601f1061200e57805160ff191683800117855561203c565b8280016001018555821561203c579182015b8281111561203b578251825591602001919060010190612020565b5b50905061204991906120d3565b5090565b82805461205990612db9565b90600052602060002090601f01602090048101928261207b57600085556120c2565b82601f1061209457803560ff19168380011785556120c2565b828001600101855582156120c2579182015b828111156120c15782358255916020019190600101906120a6565b5b5090506120cf91906120d3565b5090565b5b808211156120ec5760008160009055506001016120d4565b5090565b60006121036120fe84612b61565b612b3c565b90508281526020810184848401111561211b57600080fd5b612126848285612d77565b509392505050565b60008135905061213d816131ed565b92915050565b60008135905061215281613204565b92915050565b60008083601f84011261216a57600080fd5b8235905067ffffffffffffffff81111561218357600080fd5b60208301915083600182028301111561219b57600080fd5b9250929050565b600082601f8301126121b357600080fd5b81356121c38482602086016120f0565b91505092915050565b6000813590506121db8161321b565b92915050565b6000602082840312156121f357600080fd5b60006122018482850161212e565b91505092915050565b6000806040838503121561221d57600080fd5b600061222b8582860161212e565b925050602061223c8582860161212e565b9150509250929050565b60008060006060848603121561225b57600080fd5b60006122698682870161212e565b935050602061227a8682870161212e565b925050604061228b868287016121cc565b9150509250925092565b600080604083850312156122a857600080fd5b60006122b68582860161212e565b92505060206122c7858286016121cc565b9150509250929050565b6000602082840312156122e357600080fd5b60006122f184828501612143565b91505092915050565b60008060008060006080868803121561231257600080fd5b600061232088828901612143565b955050602086013567ffffffffffffffff81111561233d57600080fd5b61234988828901612158565b9450945050604061235c888289016121cc565b925050606086013567ffffffffffffffff81111561237957600080fd5b612385888289016121a2565b9150509295509295909350565b600080604083850312156123a557600080fd5b60006123b385828601612143565b92505060206123c4858286016121cc565b9150509250929050565b6000806000606084860312156123e357600080fd5b60006123f186828701612143565b9350506020612402868287016121cc565b925050604084013567ffffffffffffffff81111561241f57600080fd5b61242b868287016121a2565b9150509250925092565b60006020828403121561244757600080fd5b6000612455848285016121cc565b91505092915050565b600061246a8383612738565b60208301905092915050565b61247f81612d18565b82525050565b600061249082612ba2565b61249a8185612bd0565b93506124a583612b92565b8060005b838110156124d65781516124bd888261245e565b97506124c883612bc3565b9250506001810190506124a9565b5085935050505092915050565b6124ec81612d2a565b82525050565b6124fb81612d36565b82525050565b61251261250d82612d36565b612e65565b82525050565b60006125248385612be1565b9350612531838584612d77565b61253a83612f35565b840190509392505050565b600061255082612bad565b61255a8185612be1565b935061256a818560208601612d86565b61257381612f35565b840191505092915050565b600061258982612bb8565b6125938185612bf2565b93506125a3818560208601612d86565b6125ac81612f35565b840191505092915050565b60006125c4602383612bf2565b91506125cf82612f46565b604082019050919050565b60006125e7602283612bf2565b91506125f282612f95565b604082019050919050565b600061260a601d83612bf2565b915061261582612fe4565b602082019050919050565b600061262d601283612bf2565b91506126388261300d565b602082019050919050565b6000612650601783612bf2565b915061265b82613036565b602082019050919050565b6000612673602183612bf2565b915061267e8261305f565b604082019050919050565b6000612696602583612bf2565b91506126a1826130ae565b604082019050919050565b60006126b9602283612bf2565b91506126c4826130fd565b604082019050919050565b60006126dc602483612bf2565b91506126e78261314c565b604082019050919050565b60006126ff601b83612bf2565b915061270a8261319b565b602082019050919050565b6000612722601f83612bf2565b915061272d826131c4565b602082019050919050565b61274181612d60565b82525050565b61275081612d60565b82525050565b61276761276282612d60565b612e6f565b82525050565b61277681612d6a565b82525050565b60006127888285612501565b6020820191506127988284612756565b6020820191508190509392505050565b60006020820190506127bd6000830184612476565b92915050565b60006040820190506127d86000830185612476565b6127e56020830184612747565b9392505050565b600060208201905081810360008301526128068184612485565b905092915050565b600060208201905061282360008301846124e3565b92915050565b600060e08201905061283e600083018b6124f2565b61284b602083018a612747565b818103604083015261285e81888a612518565b905061286d6060830187612747565b61287a6080830186612747565b81810360a083015261288c8185612545565b905061289b60c0830184612476565b9998505050505050505050565b600060208201905081810360008301526128c28184612545565b905092915050565b600060208201905081810360008301526128e4818461257e565b905092915050565b60006020820190508181036000830152612905816125b7565b9050919050565b60006020820190508181036000830152612925816125da565b9050919050565b60006020820190508181036000830152612945816125fd565b9050919050565b6000602082019050818103600083015261296581612620565b9050919050565b6000602082019050818103600083015261298581612643565b9050919050565b600060208201905081810360008301526129a581612666565b9050919050565b600060208201905081810360008301526129c581612689565b9050919050565b600060208201905081810360008301526129e5816126ac565b9050919050565b60006020820190508181036000830152612a05816126cf565b9050919050565b60006020820190508181036000830152612a25816126f2565b9050919050565b60006020820190508181036000830152612a4581612715565b9050919050565b6000602082019050612a616000830184612747565b92915050565b6000604082019050612a7c6000830185612747565b612a896020830184612747565b9392505050565b6000606082019050612aa56000830186612747565b612ab26020830185612747565b8181036040830152612ac48184612545565b9050949350505050565b600060a082019050612ae36000830188612747565b612af06020830187612747565b612afd6040830186612747565b612b0a6060830185612747565b612b176080830184612747565b9695505050505050565b6000602082019050612b36600083018461276d565b92915050565b6000612b46612b57565b9050612b528282612deb565b919050565b6000604051905090565b600067ffffffffffffffff821115612b7c57612b7b612f06565b5b612b8582612f35565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612c0e82612d60565b9150612c1983612d60565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612c4e57612c4d612e79565b5b828201905092915050565b6000612c6482612d60565b9150612c6f83612d60565b925082612c7f57612c7e612ea8565b5b828204905092915050565b6000612c9582612d60565b9150612ca083612d60565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612cd957612cd8612e79565b5b828202905092915050565b6000612cef82612d60565b9150612cfa83612d60565b925082821015612d0d57612d0c612e79565b5b828203905092915050565b6000612d2382612d40565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612da4578082015181840152602081019050612d89565b83811115612db3576000848401525b50505050565b60006002820490506001821680612dd157607f821691505b60208210811415612de557612de4612ed7565b5b50919050565b612df482612f35565b810181811067ffffffffffffffff82111715612e1357612e12612f06565b5b80604052505050565b6000612e2782612d60565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612e5a57612e59612e79565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e63652073686f756c6420626520636f7272656374000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6131f681612d18565b811461320157600080fd5b50565b61320d81612d36565b811461321857600080fd5b50565b61322481612d60565b811461322f57600080fd5b5056fea2646970667358221220d6d6defe384cb57e129e09f3980376bedc3cdce3ee7e72bedd5aa279626fee2164736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x206 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x77B03E0D GT PUSH2 0x11A JUMPI DUP1 PUSH4 0xC5958AF9 GT PUSH2 0xAD JUMPI DUP1 PUSH4 0xCE5E11BF GT PUSH2 0x7C JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x666 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x696 JUMPI DUP1 PUSH4 0xE07C5486 EQ PUSH2 0x6C6 JUMPI DUP1 PUSH4 0xEF0234AD EQ PUSH2 0x6F6 JUMPI DUP1 PUSH4 0xF25133F3 EQ PUSH2 0x712 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x5CC JUMPI DUP1 PUSH4 0xC6384071 EQ PUSH2 0x5FC JUMPI DUP1 PUSH4 0xC979FE9F EQ PUSH2 0x61A JUMPI DUP1 PUSH4 0xCB82CC8F EQ PUSH2 0x64A JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xA1E588A5 GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0xA1E588A5 EQ PUSH2 0x545 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x576 JUMPI DUP1 PUSH4 0xB86D1D63 EQ PUSH2 0x5A6 JUMPI DUP1 PUSH4 0xBED9D861 EQ PUSH2 0x5C2 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x4BD JUMPI DUP1 PUSH4 0x8929F4C6 EQ PUSH2 0x4ED JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x509 JUMPI DUP1 PUSH4 0x96426D97 EQ PUSH2 0x527 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x19D JUMPI DUP1 PUSH4 0x699F200F GT PUSH2 0x16C JUMPI DUP1 PUSH4 0x699F200F EQ PUSH2 0x3ED JUMPI DUP1 PUSH4 0x69D43BD3 EQ PUSH2 0x41D JUMPI DUP1 PUSH4 0x6FD4F229 EQ PUSH2 0x43B JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x459 JUMPI DUP1 PUSH4 0x733BDEF0 EQ PUSH2 0x489 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 EQ PUSH2 0x353 JUMPI DUP1 PUSH4 0x5EAA9CED EQ PUSH2 0x371 JUMPI DUP1 PUSH4 0x602BF227 EQ PUSH2 0x38D JUMPI DUP1 PUSH4 0x64473DF2 EQ PUSH2 0x3BD JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x1F379ACC GT PUSH2 0x1D9 JUMPI DUP1 PUSH4 0x1F379ACC EQ PUSH2 0x2A7 JUMPI DUP1 PUSH4 0x217053C0 EQ PUSH2 0x2C3 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0x248638E5 EQ PUSH2 0x323 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x20B JUMPI DUP1 PUSH4 0x91B50FF EQ PUSH2 0x229 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x259 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x289 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x213 PUSH2 0x742 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x220 SWAP2 SWAP1 PUSH2 0x28CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x243 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23E SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x7D4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x250 SWAP2 SWAP1 PUSH2 0x28A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x273 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x26E SWAP2 SWAP1 PUSH2 0x2295 JUMP JUMPDEST PUSH2 0x881 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x291 PUSH2 0x898 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29E SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BC SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x8A2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D8 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x9A6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x30D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x308 SWAP2 SWAP1 PUSH2 0x2246 JUMP JUMPDEST PUSH2 0x9E8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x31A SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x33D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x338 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0xA92 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x34A SWAP2 SWAP1 PUSH2 0x27EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x35B PUSH2 0xAFD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x368 SWAP2 SWAP1 PUSH2 0x2B21 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x38B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x386 SWAP2 SWAP1 PUSH2 0x22FA JUMP JUMPDEST PUSH2 0xB14 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3A7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3A2 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0xE01 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3B4 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3D7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3D2 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0xE19 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3E4 SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x407 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x402 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0xE48 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x414 SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x425 PUSH2 0xE7B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x432 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x443 PUSH2 0xE81 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x450 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x473 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x46E SWAP2 SWAP1 PUSH2 0x21E1 JUMP JUMPDEST PUSH2 0xE87 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x480 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4A3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x49E SWAP2 SWAP1 PUSH2 0x21E1 JUMP JUMPDEST PUSH2 0xED0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4B4 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2ACE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4D7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4D2 SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0x103A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4E4 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x507 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x502 SWAP2 SWAP1 PUSH2 0x2435 JUMP JUMPDEST PUSH2 0x105A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x511 PUSH2 0x1160 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x51E SWAP2 SWAP1 PUSH2 0x28CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x52F PUSH2 0x11F2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x53C SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x55F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x55A SWAP2 SWAP1 PUSH2 0x22D1 JUMP JUMPDEST PUSH2 0x11FE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x56D SWAP3 SWAP2 SWAP1 PUSH2 0x2A67 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x590 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x58B SWAP2 SWAP1 PUSH2 0x2295 JUMP JUMPDEST PUSH2 0x128E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x59D SWAP2 SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5BB SWAP2 SWAP1 PUSH2 0x21E1 JUMP JUMPDEST PUSH2 0x12A5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5CA PUSH2 0x12BB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5E6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5E1 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x13ED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5F3 SWAP2 SWAP1 PUSH2 0x28A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x604 PUSH2 0x14A4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x611 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x634 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x62F SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x14AA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x641 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x664 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x65F SWAP2 SWAP1 PUSH2 0x2435 JUMP JUMPDEST PUSH2 0x14DB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x680 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x67B SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x15FF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x68D SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6B0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6AB SWAP2 SWAP1 PUSH2 0x220A JUMP JUMPDEST PUSH2 0x1699 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6BD SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6E0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6DB SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x1720 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6ED SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x710 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x70B SWAP2 SWAP1 PUSH2 0x23CE JUMP JUMPDEST PUSH2 0x176F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x72C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x727 SWAP2 SWAP1 PUSH2 0x2392 JUMP JUMPDEST PUSH2 0x1899 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x739 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0xE DUP1 SLOAD PUSH2 0x751 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x77D SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7CA JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x79F JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7CA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x7AD JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP POP DUP1 SLOAD PUSH2 0x800 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x82C SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x879 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x84E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x879 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x85C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x88E CALLER DUP5 DUP5 PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x8E9 SWAP3 SWAP2 SWAP1 PUSH2 0x1FC7 JUMP JUMPDEST POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x939 SWAP1 PUSH2 0x2E1C JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x955 SWAP3 SWAP2 SWAP1 PUSH2 0x277C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC SLOAD SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9F5 DUP5 DUP5 DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH2 0xA87 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xA82 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0xAF1 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0xADD JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x10 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP DUP3 EQ PUSH2 0xB6C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB63 SWAP1 PUSH2 0x296C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 EQ DUP1 PUSH2 0xB85 JUMPI POP PUSH1 0x64 DUP6 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0xBC4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBBB SWAP1 PUSH2 0x292C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 SWAP1 PUSH2 0xBF7 SWAP3 SWAP2 SWAP1 PUSH2 0x204D JUMP JUMPDEST POP PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 TIMESTAMP SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE PUSH1 0x0 DUP1 PUSH2 0xC3E DUP8 PUSH2 0x11FE JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 DUP3 DUP3 PUSH2 0xC50 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST GT ISZERO PUSH2 0xC6D JUMPI PUSH2 0xC6B CALLER DUP4 DUP4 PUSH2 0xC66 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST PUSH2 0x128E JUMP JUMPDEST POP JUMPDEST TIMESTAMP PUSH1 0xA DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0xC86 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP CALLER PUSH1 0x2 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP TIMESTAMP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0xDA3 SWAP1 PUSH2 0x2E1C JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH32 0xAB1D593F8E2ECB165106E30A39DB6769078D35C3FDBB110F24932F0D7AF68C29 DUP8 TIMESTAMP DUP9 DUP9 DUP6 DUP8 PUSH2 0xDD9 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST DUP10 DUP10 CALLER PUSH1 0x40 MLOAD PUSH2 0xDF0 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2829 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP12 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP2 SWAP4 SWAP6 SWAP1 SWAP3 SWAP5 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x1 ADD SLOAD LT ISZERO PUSH2 0x10E4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10DB SWAP1 PUSH2 0x2A0C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1101 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x111C SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0x3D8D9DF4BD0172DF32E557FA48E96435CD7F2CAC06AAFFACFAEE608E6F7898EF CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x1154 SWAP3 SWAP2 SWAP1 PUSH2 0x27C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xF DUP1 SLOAD PUSH2 0x116F SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x119B SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x11E8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x11BD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x11E8 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x11CB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0x6F05B59D3B20000 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA SLOAD TIMESTAMP PUSH2 0x1211 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x12C PUSH8 0x6F05B59D3B20000 DUP4 PUSH2 0x122C SWAP2 SWAP1 PUSH2 0x2C8A JUMP JUMPDEST PUSH2 0x1236 SWAP2 SWAP1 PUSH2 0x2C59 JUMP JUMPDEST SWAP1 POP PUSH1 0xB SLOAD DUP2 PUSH2 0x1246 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST PUSH2 0x124F ADDRESS PUSH2 0xE87 JUMP JUMPDEST LT ISZERO PUSH2 0x126E JUMPI PUSH1 0xB SLOAD PUSH2 0x1261 ADDRESS PUSH2 0xE87 JUMP JUMPDEST PUSH2 0x126B SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x5 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP2 SWAP4 POP SWAP4 POP POP POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x129B CALLER DUP5 DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x12B8 DUP2 PUSH9 0x3635C9ADC5DEA00000 PUSH2 0x1C8B JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH3 0x93A80 DUP2 PUSH1 0x0 ADD SLOAD TIMESTAMP PUSH2 0x1312 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST LT ISZERO PUSH2 0x1353 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x134A SWAP1 PUSH2 0x294C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT PUSH2 0x139A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1391 SWAP1 PUSH2 0x29CC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x13A9 ADDRESS CALLER DUP4 PUSH1 0x2 ADD SLOAD PUSH2 0x1A95 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH32 0x4A7934670BD8304E7DA22378BE1368F7C4FEF17C5AEE81804BEDA8638FE428EC CALLER PUSH1 0x40 MLOAD PUSH2 0x13E2 SWAP2 SWAP1 PUSH2 0x27A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x141E SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x144A SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1497 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x146C JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1497 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x147A JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xC SLOAD DUP2 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x14C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT ISZERO PUSH2 0x1589 JUMPI DUP2 DUP2 PUSH1 0x2 ADD SLOAD LT PUSH2 0x1556 JUMPI DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x154A SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x1584 JUMP JUMPDEST PUSH2 0x1570 CALLER ADDRESS DUP4 PUSH1 0x2 ADD SLOAD DUP6 PUSH2 0x156B SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST PUSH2 0x1DD4 JUMP JUMPDEST PUSH2 0x1579 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP JUMPDEST PUSH2 0x159E JUMP JUMPDEST PUSH2 0x1594 CALLER ADDRESS DUP5 PUSH2 0x1DD4 JUMP JUMPDEST PUSH2 0x159D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15BB SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0xA96C2CCE65119A2170D1711A6E82F18F2006448828483BA7545E595476543647 CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x15F3 SWAP3 SWAP2 SWAP1 PUSH2 0x27C3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP2 EQ DUP1 PUSH2 0x162A JUMPI POP DUP3 DUP2 GT ISZERO JUMPDEST ISZERO PUSH2 0x1639 JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1693 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x1684 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD SLOAD SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP4 EQ DUP1 PUSH2 0x1788 JUMPI POP PUSH1 0x64 DUP4 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0x17C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17BE SWAP1 PUSH2 0x292C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x17D2 CALLER ADDRESS DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH2 0x17DF SWAP2 SWAP1 PUSH2 0x2C59 JUMP JUMPDEST SWAP2 POP PUSH2 0x17EB ADDRESS DUP4 PUSH2 0x1E7E JUMP JUMPDEST DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x17FD SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1827 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xD951D408A0F5057DA5C25B826FB5CE403D56542962B6AC6994DBC6D5432FBFF5 DUP5 PUSH1 0x5 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP6 PUSH1 0x40 MLOAD PUSH2 0x188C SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2A90 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x18B5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x193A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1931 SWAP1 PUSH2 0x29EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x19AA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19A1 SWAP1 PUSH2 0x290C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x8 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1A88 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1B05 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AFC SWAP1 PUSH2 0x29AC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1B75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B6C SWAP1 PUSH2 0x28EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1BC4 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C1A SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1C7E SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1CFB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1CF2 SWAP1 PUSH2 0x2A2C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D0D SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D63 SWAP2 SWAP1 PUSH2 0x2C03 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1DC8 SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DE1 DUP5 DUP5 DUP5 PUSH2 0x1A95 JUMP JUMPDEST PUSH2 0x1E73 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x1E6E SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1EEE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EE5 SWAP1 PUSH2 0x298C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F3D SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F56 SWAP2 SWAP1 PUSH2 0x2CE4 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1FBB SWAP2 SWAP1 PUSH2 0x2A4C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1FD3 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1FF5 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x203C JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x200E JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x203C JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x203C JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x203B JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2020 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2049 SWAP2 SWAP1 PUSH2 0x20D3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x2059 SWAP1 PUSH2 0x2DB9 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x207B JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x20C2 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x2094 JUMPI DUP1 CALLDATALOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x20C2 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x20C2 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x20C1 JUMPI DUP3 CALLDATALOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x20A6 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x20CF SWAP2 SWAP1 PUSH2 0x20D3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x20EC JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x20D4 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2103 PUSH2 0x20FE DUP5 PUSH2 0x2B61 JUMP JUMPDEST PUSH2 0x2B3C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x211B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2126 DUP5 DUP3 DUP6 PUSH2 0x2D77 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x213D DUP2 PUSH2 0x31ED JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2152 DUP2 PUSH2 0x3204 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x216A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2183 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x219B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x21B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x21C3 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x20F0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x21DB DUP2 PUSH2 0x321B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2201 DUP5 DUP3 DUP6 ADD PUSH2 0x212E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x221D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x222B DUP6 DUP3 DUP7 ADD PUSH2 0x212E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x223C DUP6 DUP3 DUP7 ADD PUSH2 0x212E JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x225B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2269 DUP7 DUP3 DUP8 ADD PUSH2 0x212E JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x227A DUP7 DUP3 DUP8 ADD PUSH2 0x212E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x228B DUP7 DUP3 DUP8 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x22A8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22B6 DUP6 DUP3 DUP7 ADD PUSH2 0x212E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22C7 DUP6 DUP3 DUP7 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x22E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22F1 DUP5 DUP3 DUP6 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x2312 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2320 DUP9 DUP3 DUP10 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x233D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2349 DUP9 DUP3 DUP10 ADD PUSH2 0x2158 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 PUSH2 0x235C DUP9 DUP3 DUP10 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2379 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2385 DUP9 DUP3 DUP10 ADD PUSH2 0x21A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x23A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x23B3 DUP6 DUP3 DUP7 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x23C4 DUP6 DUP3 DUP7 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x23E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x23F1 DUP7 DUP3 DUP8 ADD PUSH2 0x2143 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2402 DUP7 DUP3 DUP8 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x241F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x242B DUP7 DUP3 DUP8 ADD PUSH2 0x21A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2447 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2455 DUP5 DUP3 DUP6 ADD PUSH2 0x21CC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x246A DUP4 DUP4 PUSH2 0x2738 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x247F DUP2 PUSH2 0x2D18 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2490 DUP3 PUSH2 0x2BA2 JUMP JUMPDEST PUSH2 0x249A DUP2 DUP6 PUSH2 0x2BD0 JUMP JUMPDEST SWAP4 POP PUSH2 0x24A5 DUP4 PUSH2 0x2B92 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x24D6 JUMPI DUP2 MLOAD PUSH2 0x24BD DUP9 DUP3 PUSH2 0x245E JUMP JUMPDEST SWAP8 POP PUSH2 0x24C8 DUP4 PUSH2 0x2BC3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x24A9 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x24EC DUP2 PUSH2 0x2D2A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24FB DUP2 PUSH2 0x2D36 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2512 PUSH2 0x250D DUP3 PUSH2 0x2D36 JUMP JUMPDEST PUSH2 0x2E65 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2524 DUP4 DUP6 PUSH2 0x2BE1 JUMP JUMPDEST SWAP4 POP PUSH2 0x2531 DUP4 DUP6 DUP5 PUSH2 0x2D77 JUMP JUMPDEST PUSH2 0x253A DUP4 PUSH2 0x2F35 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2550 DUP3 PUSH2 0x2BAD JUMP JUMPDEST PUSH2 0x255A DUP2 DUP6 PUSH2 0x2BE1 JUMP JUMPDEST SWAP4 POP PUSH2 0x256A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2D86 JUMP JUMPDEST PUSH2 0x2573 DUP2 PUSH2 0x2F35 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2589 DUP3 PUSH2 0x2BB8 JUMP JUMPDEST PUSH2 0x2593 DUP2 DUP6 PUSH2 0x2BF2 JUMP JUMPDEST SWAP4 POP PUSH2 0x25A3 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2D86 JUMP JUMPDEST PUSH2 0x25AC DUP2 PUSH2 0x2F35 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25C4 PUSH1 0x23 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x25CF DUP3 PUSH2 0x2F46 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25E7 PUSH1 0x22 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x25F2 DUP3 PUSH2 0x2F95 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x260A PUSH1 0x1D DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x2615 DUP3 PUSH2 0x2FE4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x262D PUSH1 0x12 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x2638 DUP3 PUSH2 0x300D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2650 PUSH1 0x17 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x265B DUP3 PUSH2 0x3036 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2673 PUSH1 0x21 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x267E DUP3 PUSH2 0x305F JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2696 PUSH1 0x25 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x26A1 DUP3 PUSH2 0x30AE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26B9 PUSH1 0x22 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x26C4 DUP3 PUSH2 0x30FD JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26DC PUSH1 0x24 DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x26E7 DUP3 PUSH2 0x314C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26FF PUSH1 0x1B DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x270A DUP3 PUSH2 0x319B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2722 PUSH1 0x1F DUP4 PUSH2 0x2BF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x272D DUP3 PUSH2 0x31C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2741 DUP2 PUSH2 0x2D60 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2750 DUP2 PUSH2 0x2D60 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2767 PUSH2 0x2762 DUP3 PUSH2 0x2D60 JUMP JUMPDEST PUSH2 0x2E6F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2776 DUP2 PUSH2 0x2D6A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2788 DUP3 DUP6 PUSH2 0x2501 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x2798 DUP3 DUP5 PUSH2 0x2756 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27BD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2476 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x27D8 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2476 JUMP JUMPDEST PUSH2 0x27E5 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2806 DUP2 DUP5 PUSH2 0x2485 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2823 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24E3 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 ADD SWAP1 POP PUSH2 0x283E PUSH1 0x0 DUP4 ADD DUP12 PUSH2 0x24F2 JUMP JUMPDEST PUSH2 0x284B PUSH1 0x20 DUP4 ADD DUP11 PUSH2 0x2747 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x285E DUP2 DUP9 DUP11 PUSH2 0x2518 JUMP JUMPDEST SWAP1 POP PUSH2 0x286D PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x287A PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x2747 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x288C DUP2 DUP6 PUSH2 0x2545 JUMP JUMPDEST SWAP1 POP PUSH2 0x289B PUSH1 0xC0 DUP4 ADD DUP5 PUSH2 0x2476 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28C2 DUP2 DUP5 PUSH2 0x2545 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28E4 DUP2 DUP5 PUSH2 0x257E JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2905 DUP2 PUSH2 0x25B7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2925 DUP2 PUSH2 0x25DA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2945 DUP2 PUSH2 0x25FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2965 DUP2 PUSH2 0x2620 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2985 DUP2 PUSH2 0x2643 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29A5 DUP2 PUSH2 0x2666 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29C5 DUP2 PUSH2 0x2689 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29E5 DUP2 PUSH2 0x26AC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A05 DUP2 PUSH2 0x26CF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A25 DUP2 PUSH2 0x26F2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A45 DUP2 PUSH2 0x2715 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2A61 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2A7C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2A89 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x2AA5 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2AB2 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2747 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2AC4 DUP2 DUP5 PUSH2 0x2545 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x2AE3 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2AF0 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2AFD PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2B0A PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2747 JUMP JUMPDEST PUSH2 0x2B17 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2747 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2B36 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x276D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B46 PUSH2 0x2B57 JUMP JUMPDEST SWAP1 POP PUSH2 0x2B52 DUP3 DUP3 PUSH2 0x2DEB JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2B7C JUMPI PUSH2 0x2B7B PUSH2 0x2F06 JUMP JUMPDEST JUMPDEST PUSH2 0x2B85 DUP3 PUSH2 0x2F35 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C0E DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C19 DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2C4E JUMPI PUSH2 0x2C4D PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C64 DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C6F DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2C7F JUMPI PUSH2 0x2C7E PUSH2 0x2EA8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C95 DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CA0 DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2CD9 JUMPI PUSH2 0x2CD8 PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CEF DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CFA DUP4 PUSH2 0x2D60 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2D0D JUMPI PUSH2 0x2D0C PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D23 DUP3 PUSH2 0x2D40 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2DA4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2D89 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2DB3 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2DD1 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2DE5 JUMPI PUSH2 0x2DE4 PUSH2 0x2ED7 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2DF4 DUP3 PUSH2 0x2F35 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2E13 JUMPI PUSH2 0x2E12 PUSH2 0x2F06 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E27 DUP3 PUSH2 0x2D60 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2E5A JUMPI PUSH2 0x2E59 PUSH2 0x2E79 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6964206D7573742062652068617368206F662062797465732064617461000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x372064617973206469646E277420706173730000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6E6F6E63652073686F756C6420626520636F7272656374000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x7265706F72746572206E6F74206C6F636B656420666F72207769746864726177 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616C000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x696E73756666696369656E74207374616B65642062616C616E63650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x31F6 DUP2 PUSH2 0x2D18 JUMP JUMPDEST DUP2 EQ PUSH2 0x3201 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x320D DUP2 PUSH2 0x2D36 JUMP JUMPDEST DUP2 EQ PUSH2 0x3218 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3224 DUP2 PUSH2 0x2D60 JUMP JUMPDEST DUP2 EQ PUSH2 0x322F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD6 0xD6 0xDE INVALID CODESIZE 0x4C 0xB5 PUSH31 0x129E09F3980376BEDC3CDCE3EE7E72BEDD5AA279626FEE2164736F6C634300 ADDMOD SUB STOP CALLER ", - "sourceMap": "57:18000:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14171:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1333:59;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3126:187;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14979:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3501:305;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;991:74;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7278:342;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13920:146;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11958:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4432:1267;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1228:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;891:62;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;841:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1922:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1796:51;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11670:110;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10551:497;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;13052:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8758:431;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14776:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1672:46;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12343:488;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6801:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3954:81;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9252:461;;;:::i;:::-;;14492:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1995:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1430:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7755:847;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13435:283;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11339:180;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9949:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5937:618;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1175:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14171:81;14208:13;14240:5;14233:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14171:81;:::o;1333:59::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3126:187::-;3226:4;3246:39;3255:10;3267:8;3277:7;3246:8;:39::i;:::-;3302:4;3295:11;;3126:187;;;;:::o;14979:89::-;15023:7;15049:12;;15042:19;;14979:89;:::o;3501:305::-;3611:9;;;;;;;;;;;;3580:6;:16;3587:8;3580:16;;;;;;;;;;;:28;3597:10;3580:28;;;;;;;;;;;:40;;;;;;;;;;;;:::i;:::-;;3665:4;3630:10;:20;3641:8;3630:20;;;;;;;;;;;:32;3651:10;3630:32;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;3679:9;;:11;;;;;;;;;:::i;:::-;;;;;;3700:10;:61;3738:8;3748:10;3721:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3711:49;;;;;;3700:61;;;;;;;;;;;3780:9;;3700:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3501:305;;:::o;991:74::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7278:342::-;7408:4;7424:39;7434:7;7443:10;7455:7;7424:9;:39::i;:::-;7473:119;7495:7;7516:10;7575:7;7540:11;:20;7552:7;7540:20;;;;;;;;;;;;;;;:32;7561:10;7540:32;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;7473:8;:119::i;:::-;7609:4;7602:11;;7278:342;;;;;:::o;13920:146::-;14003:16;14042:10;:17;14053:5;14042:17;;;;;;;;;;;14035:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13920:146;;;:::o;11958:81::-;11999:5;12023:9;;;;;;;;;;;12016:16;;11958:81;:::o;4432:1267::-;4623:10;:20;4634:8;4623:20;;;;;;;;;;;:27;;;;4613:6;:37;4592:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;4752:10;4742:21;;;;;;4730:8;:33;:61;;;;4788:3;4775:8;4767:17;;:24;;4730:61;4709:137;;;;;;;;;;;;:::i;:::-;;;;;;;;;4892:6;;4856;:16;4863:8;4856:16;;;;;;;;;;;:33;4873:15;4856:33;;;;;;;;;;;:42;;;;;;;:::i;:::-;;4908:10;:20;4919:8;4908:20;;;;;;;;;;;4934:15;4908:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5034:12;5048:15;5067:26;5084:8;5067:16;:26::i;:::-;5033:60;;;;5124:1;5117:4;5107:7;:14;;;;:::i;:::-;:18;5103:85;;;5141:36;5150:10;5172:4;5162:7;:14;;;;:::i;:::-;5141:8;:36::i;:::-;;5103:85;5218:15;5197:18;:36;;;;5261:4;5243:14;;:22;;;;;;;:::i;:::-;;;;;;;;5292:1;5275:4;:14;5280:8;5275:14;;;;;;;;;;;:18;;;;5352:10;5303:19;:29;5323:8;5303:29;;;;;;;;;;;:46;5333:15;5303:46;;;;;;;;;;;;:59;;;;;;;;;;;;;;;;;;5422:15;5372:13;:25;5386:10;5372:25;;;;;;;;;;;;;;;:47;;:65;;;;5447:13;:25;5461:10;5447:25;;;;;;;;;;;;;;;:42;;;:44;;;;;;;;;:::i;:::-;;;;;;5506:186;5529:8;5551:15;5580:6;;5607:7;5600:4;:14;;;;:::i;:::-;5628:6;5648:10;5672;5506:186;;;;;;;;;;;;;:::i;:::-;;;;;;;;4432:1267;;;;;;;:::o;1228:39::-;;;;;;;;;;;;;;;;;:::o;891:62::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;841:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;1922:29::-;;;;:::o;1796:51::-;;;;:::o;11670:110::-;11728:7;11754:9;:19;11764:8;11754:19;;;;;;;;;;;;;;;;11747:26;;11670:110;;;:::o;10551:497::-;10651:7;10672;10693;10714;10735;10788:13;:22;10802:7;10788:22;;;;;;;;;;;;;;;:32;;;10834:13;:22;10848:7;10834:22;;;;;;;;;;;;;;;:36;;;10884:13;:22;10898:7;10884:22;;;;;;;;;;;;;;;:36;;;10934:13;:22;10948:7;10934:22;;;;;;;;;;;;;;;:44;;;10992:13;:22;11006:7;10992:22;;;;;;;;;;;;;;;:39;;;10767:274;;;;;;;;;;10551:497;;;;;;;:::o;13052:162::-;13150:7;13180:10;:20;13191:8;13180:20;;;;;;;;;;;:27;;;;13173:34;;13052:162;;;:::o;8758:431::-;8826:25;8854:13;:25;8868:10;8854:25;;;;;;;;;;;;;;;8826:53;;8935:7;8910;:21;;;:32;;8889:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;9025:15;9005:7;:17;;:35;;;;9075:7;9050;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;9117:7;9092;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;9139:43;9162:10;9174:7;9139:43;;;;;;;:::i;:::-;;;;;;;;8758:431;;:::o;14776:85::-;14815:13;14847:7;14840:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14776:85;:::o;1672:46::-;1714:4;1672:46;:::o;12343:488::-;12432:7;12441;12464:17;12502:18;;12484:15;:36;;;;:::i;:::-;12464:56;;12530:15;12580:3;1714:4;12549:9;:27;;;;:::i;:::-;12548:35;;;;:::i;:::-;12530:53;;12691:14;;12681:7;:24;;;;:::i;:::-;12654;12672:4;12654:9;:24::i;:::-;:51;12650:133;;;12758:14;;12731:24;12749:4;12731:9;:24::i;:::-;:41;;;;:::i;:::-;12721:51;;12650:133;12800:4;:14;12805:8;12800:14;;;;;;;;;;;;12816:7;12792:32;;;;;;12343:488;;;:::o;6801:193::-;6904:4;6924:42;6934:10;6946;6958:7;6924:9;:42::i;:::-;6983:4;6976:11;;6801:193;;;;:::o;3954:81::-;4004:24;4010:5;4017:10;4004:5;:24::i;:::-;3954:81;:::o;9252:461::-;9296:20;9319:13;:25;9333:10;9319:25;;;;;;;;;;;;;;;9296:48;;9465:6;9449:2;:12;;;9431:15;:30;;;;:::i;:::-;:40;;9423:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9531:1;9512:2;:16;;;:20;9504:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9581:54;9599:4;9606:10;9618:2;:16;;;9581:9;:54::i;:::-;9664:1;9645:2;:16;;:20;;;;9680:26;9695:10;9680:26;;;;;;:::i;:::-;;;;;;;;9252:461;:::o;14492:175::-;14597:12;14632:6;:16;14639:8;14632:16;;;;;;;;;;;:28;14649:10;14632:28;;;;;;;;;;;14625:35;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14492:175;;;;:::o;1995:24::-;;;;:::o;1430:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7755:847::-;7813:25;7841:13;:25;7855:10;7841:25;;;;;;;;;;;;;;;7813:53;;7904:1;7880:7;:21;;;:25;7876:543;;;7950:7;7925;:21;;;:32;7921:399;;8002:7;7977;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;7921:399;;;8077:167;8116:10;8160:4;8201:7;:21;;;8191:7;:31;;;;:::i;:::-;8077:13;:167::i;:::-;8048:214;;;;;;8304:1;8280:7;:21;;:25;;;;7921:399;7876:543;;;8358:49;8372:10;8392:4;8399:7;8358:13;:49::i;:::-;8350:58;;;;;;7876:543;8448:15;8428:7;:17;;:35;;;;8543:7;8518;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;8565:30;8575:10;8587:7;8565:30;;;;;;;:::i;:::-;;;;;;;;7755:847;;:::o;13435:283::-;13553:7;13576:11;13590:10;:20;13601:8;13590:20;;;;;;;;;;;:27;;;;13576:41;;13638:1;13631:3;:8;:25;;;;13650:6;13643:3;:13;;13631:25;13627:39;;;13665:1;13658:8;;;;;13627:39;13683:10;:20;13694:8;13683:20;;;;;;;;;;;13704:6;13683:28;;;;;;;;;;;;;;;;;;;;;;;;13676:35;;;13435:283;;;;;:::o;11339:180::-;11453:7;11483:11;:19;11495:6;11483:19;;;;;;;;;;;;;;;:29;11503:8;11483:29;;;;;;;;;;;;;;;;11476:36;;11339:180;;;;:::o;9949:195::-;10066:7;10096:19;:29;10116:8;10096:29;;;;;;;;;;;:41;10126:10;10096:41;;;;;;;;;;;;;;;;;;;;;10089:48;;9949:195;;;;:::o;5937:618::-;6107:10;6097:21;;;;;;6085:8;:33;:61;;;;6143:3;6130:8;6122:17;;:24;;6085:61;6064:137;;;;;;;;;;;;:::i;:::-;;;;;;;;;6211:45;6221:10;6241:4;6248:7;6211:9;:45::i;:::-;6286:1;6276:7;:11;;;;:::i;:::-;6266:21;;6297:29;6311:4;6318:7;6297:5;:29::i;:::-;6354:7;6336:14;;:25;;;;;;;:::i;:::-;;;;;;;;6389:7;6371:4;:14;6376:8;6371:14;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;6457:8;6433:10;6411:137;;;6479:7;6500:4;:14;6505:8;6500:14;;;;;;;;;;;;6528:10;6411:137;;;;;;;;:::i;:::-;;;;;;;;5937:618;;;:::o;1175:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;15370:380::-;15522:1;15504:20;;:6;:20;;;;15496:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;15603:1;15583:22;;:8;:22;;;;15575:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;15686:7;15654:11;:19;15666:6;15654:19;;;;;;;;;;;;;;;:29;15674:8;15654:29;;;;;;;;;;;;;;;:39;;;;15725:8;15708:35;;15717:6;15708:35;;;15735:7;15708:35;;;;;;:::i;:::-;;;;;;;;15370:380;;;:::o;16937:458::-;17094:1;17075:21;;:7;:21;;;;17067:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;17191:1;17169:24;;:10;:24;;;;17148:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;17286:7;17264:9;:18;17274:7;17264:18;;;;;;;;;;;;;;;;:29;;;;;;;:::i;:::-;;;;;;;;17328:7;17303:9;:21;17313:10;17303:21;;;;;;;;;;;;;;;;:32;;;;;;;:::i;:::-;;;;;;;;17368:10;17350:38;;17359:7;17350:38;;;17380:7;17350:38;;;;;;:::i;:::-;;;;;;;;16937:458;;;:::o;16420:277::-;16525:1;16505:22;;:8;:22;;;;16497:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;16589:7;16573:12;;:23;;;;;;;:::i;:::-;;;;;;;;16629:7;16606:9;:19;16616:8;16606:19;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;16672:8;16651:39;;16668:1;16651:39;;;16682:7;16651:39;;;;;;:::i;:::-;;;;;;;;16420:277;;:::o;17707:348::-;17840:4;17856:39;17866:7;17875:10;17887:7;17856:9;:39::i;:::-;17905:122;17927:7;17948:10;18010:7;17972:11;:20;17984:7;17972:20;;;;;;;;;;;;;;;:35;18001:4;17972:35;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;17905:8;:122::i;:::-;18044:4;18037:11;;17707:348;;;;;:::o;15939:279::-;16044:1;16024:22;;:8;:22;;;;16016:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16117:7;16094:9;:19;16104:8;16094:19;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;16150:7;16134:12;;:23;;;;;;;:::i;:::-;;;;;;;;16199:1;16172:39;;16181:8;16172:39;;;16203:7;16172:39;;;;;;:::i;:::-;;;;;;;;15939:279;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:343:4:-;;109:65;125:48;166:6;125:48;:::i;:::-;109:65;:::i;:::-;100:74;;197:6;190:5;183:21;235:4;228:5;224:16;273:3;264:6;259:3;255:16;252:25;249:2;;;290:1;287;280:12;249:2;303:41;337:6;332:3;327;303:41;:::i;:::-;90:260;;;;;;:::o;356:139::-;;440:6;427:20;418:29;;456:33;483:5;456:33;:::i;:::-;408:87;;;;:::o;501:139::-;;585:6;572:20;563:29;;601:33;628:5;601:33;:::i;:::-;553:87;;;;:::o;659:351::-;;;776:3;769:4;761:6;757:17;753:27;743:2;;794:1;791;784:12;743:2;830:6;817:20;807:30;;860:18;852:6;849:30;846:2;;;892:1;889;882:12;846:2;929:4;921:6;917:17;905:29;;983:3;975:4;967:6;963:17;953:8;949:32;946:41;943:2;;;1000:1;997;990:12;943:2;733:277;;;;;:::o;1029:271::-;;1133:3;1126:4;1118:6;1114:17;1110:27;1100:2;;1151:1;1148;1141:12;1100:2;1191:6;1178:20;1216:78;1290:3;1282:6;1275:4;1267:6;1263:17;1216:78;:::i;:::-;1207:87;;1090:210;;;;;:::o;1306:139::-;;1390:6;1377:20;1368:29;;1406:33;1433:5;1406:33;:::i;:::-;1358:87;;;;:::o;1451:262::-;;1559:2;1547:9;1538:7;1534:23;1530:32;1527:2;;;1575:1;1572;1565:12;1527:2;1618:1;1643:53;1688:7;1679:6;1668:9;1664:22;1643:53;:::i;:::-;1633:63;;1589:117;1517:196;;;;:::o;1719:407::-;;;1844:2;1832:9;1823:7;1819:23;1815:32;1812:2;;;1860:1;1857;1850:12;1812:2;1903:1;1928:53;1973:7;1964:6;1953:9;1949:22;1928:53;:::i;:::-;1918:63;;1874:117;2030:2;2056:53;2101:7;2092:6;2081:9;2077:22;2056:53;:::i;:::-;2046:63;;2001:118;1802:324;;;;;:::o;2132:552::-;;;;2274:2;2262:9;2253:7;2249:23;2245:32;2242:2;;;2290:1;2287;2280:12;2242:2;2333:1;2358:53;2403:7;2394:6;2383:9;2379:22;2358:53;:::i;:::-;2348:63;;2304:117;2460:2;2486:53;2531:7;2522:6;2511:9;2507:22;2486:53;:::i;:::-;2476:63;;2431:118;2588:2;2614:53;2659:7;2650:6;2639:9;2635:22;2614:53;:::i;:::-;2604:63;;2559:118;2232:452;;;;;:::o;2690:407::-;;;2815:2;2803:9;2794:7;2790:23;2786:32;2783:2;;;2831:1;2828;2821:12;2783:2;2874:1;2899:53;2944:7;2935:6;2924:9;2920:22;2899:53;:::i;:::-;2889:63;;2845:117;3001:2;3027:53;3072:7;3063:6;3052:9;3048:22;3027:53;:::i;:::-;3017:63;;2972:118;2773:324;;;;;:::o;3103:262::-;;3211:2;3199:9;3190:7;3186:23;3182:32;3179:2;;;3227:1;3224;3217:12;3179:2;3270:1;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3241:117;3169:196;;;;:::o;3371:940::-;;;;;;3558:3;3546:9;3537:7;3533:23;3529:33;3526:2;;;3575:1;3572;3565:12;3526:2;3618:1;3643:53;3688:7;3679:6;3668:9;3664:22;3643:53;:::i;:::-;3633:63;;3589:117;3773:2;3762:9;3758:18;3745:32;3804:18;3796:6;3793:30;3790:2;;;3836:1;3833;3826:12;3790:2;3872:64;3928:7;3919:6;3908:9;3904:22;3872:64;:::i;:::-;3854:82;;;;3716:230;3985:2;4011:53;4056:7;4047:6;4036:9;4032:22;4011:53;:::i;:::-;4001:63;;3956:118;4141:2;4130:9;4126:18;4113:32;4172:18;4164:6;4161:30;4158:2;;;4204:1;4201;4194:12;4158:2;4232:62;4286:7;4277:6;4266:9;4262:22;4232:62;:::i;:::-;4222:72;;4084:220;3516:795;;;;;;;;:::o;4317:407::-;;;4442:2;4430:9;4421:7;4417:23;4413:32;4410:2;;;4458:1;4455;4448:12;4410:2;4501:1;4526:53;4571:7;4562:6;4551:9;4547:22;4526:53;:::i;:::-;4516:63;;4472:117;4628:2;4654:53;4699:7;4690:6;4679:9;4675:22;4654:53;:::i;:::-;4644:63;;4599:118;4400:324;;;;;:::o;4730:663::-;;;;4881:2;4869:9;4860:7;4856:23;4852:32;4849:2;;;4897:1;4894;4887:12;4849:2;4940:1;4965:53;5010:7;5001:6;4990:9;4986:22;4965:53;:::i;:::-;4955:63;;4911:117;5067:2;5093:53;5138:7;5129:6;5118:9;5114:22;5093:53;:::i;:::-;5083:63;;5038:118;5223:2;5212:9;5208:18;5195:32;5254:18;5246:6;5243:30;5240:2;;;5286:1;5283;5276:12;5240:2;5314:62;5368:7;5359:6;5348:9;5344:22;5314:62;:::i;:::-;5304:72;;5166:220;4839:554;;;;;:::o;5399:262::-;;5507:2;5495:9;5486:7;5482:23;5478:32;5475:2;;;5523:1;5520;5513:12;5475:2;5566:1;5591:53;5636:7;5627:6;5616:9;5612:22;5591:53;:::i;:::-;5581:63;;5537:117;5465:196;;;;:::o;5667:179::-;;5757:46;5799:3;5791:6;5757:46;:::i;:::-;5835:4;5830:3;5826:14;5812:28;;5747:99;;;;:::o;5852:118::-;5939:24;5957:5;5939:24;:::i;:::-;5934:3;5927:37;5917:53;;:::o;6006:732::-;;6154:54;6202:5;6154:54;:::i;:::-;6224:86;6303:6;6298:3;6224:86;:::i;:::-;6217:93;;6334:56;6384:5;6334:56;:::i;:::-;6413:7;6444:1;6429:284;6454:6;6451:1;6448:13;6429:284;;;6530:6;6524:13;6557:63;6616:3;6601:13;6557:63;:::i;:::-;6550:70;;6643:60;6696:6;6643:60;:::i;:::-;6633:70;;6489:224;6476:1;6473;6469:9;6464:14;;6429:284;;;6433:14;6729:3;6722:10;;6130:608;;;;;;;:::o;6744:109::-;6825:21;6840:5;6825:21;:::i;:::-;6820:3;6813:34;6803:50;;:::o;6859:118::-;6946:24;6964:5;6946:24;:::i;:::-;6941:3;6934:37;6924:53;;:::o;6983:157::-;7088:45;7108:24;7126:5;7108:24;:::i;:::-;7088:45;:::i;:::-;7083:3;7076:58;7066:74;;:::o;7168:301::-;;7285:70;7348:6;7343:3;7285:70;:::i;:::-;7278:77;;7365:43;7401:6;7396:3;7389:5;7365:43;:::i;:::-;7433:29;7455:6;7433:29;:::i;:::-;7428:3;7424:39;7417:46;;7268:201;;;;;:::o;7475:360::-;;7589:38;7621:5;7589:38;:::i;:::-;7643:70;7706:6;7701:3;7643:70;:::i;:::-;7636:77;;7722:52;7767:6;7762:3;7755:4;7748:5;7744:16;7722:52;:::i;:::-;7799:29;7821:6;7799:29;:::i;:::-;7794:3;7790:39;7783:46;;7565:270;;;;;:::o;7841:364::-;;7957:39;7990:5;7957:39;:::i;:::-;8012:71;8076:6;8071:3;8012:71;:::i;:::-;8005:78;;8092:52;8137:6;8132:3;8125:4;8118:5;8114:16;8092:52;:::i;:::-;8169:29;8191:6;8169:29;:::i;:::-;8164:3;8160:39;8153:46;;7933:272;;;;;:::o;8211:366::-;;8374:67;8438:2;8433:3;8374:67;:::i;:::-;8367:74;;8450:93;8539:3;8450:93;:::i;:::-;8568:2;8563:3;8559:12;8552:19;;8357:220;;;:::o;8583:366::-;;8746:67;8810:2;8805:3;8746:67;:::i;:::-;8739:74;;8822:93;8911:3;8822:93;:::i;:::-;8940:2;8935:3;8931:12;8924:19;;8729:220;;;:::o;8955:366::-;;9118:67;9182:2;9177:3;9118:67;:::i;:::-;9111:74;;9194:93;9283:3;9194:93;:::i;:::-;9312:2;9307:3;9303:12;9296:19;;9101:220;;;:::o;9327:366::-;;9490:67;9554:2;9549:3;9490:67;:::i;:::-;9483:74;;9566:93;9655:3;9566:93;:::i;:::-;9684:2;9679:3;9675:12;9668:19;;9473:220;;;:::o;9699:366::-;;9862:67;9926:2;9921:3;9862:67;:::i;:::-;9855:74;;9938:93;10027:3;9938:93;:::i;:::-;10056:2;10051:3;10047:12;10040:19;;9845:220;;;:::o;10071:366::-;;10234:67;10298:2;10293:3;10234:67;:::i;:::-;10227:74;;10310:93;10399:3;10310:93;:::i;:::-;10428:2;10423:3;10419:12;10412:19;;10217:220;;;:::o;10443:366::-;;10606:67;10670:2;10665:3;10606:67;:::i;:::-;10599:74;;10682:93;10771:3;10682:93;:::i;:::-;10800:2;10795:3;10791:12;10784:19;;10589:220;;;:::o;10815:366::-;;10978:67;11042:2;11037:3;10978:67;:::i;:::-;10971:74;;11054:93;11143:3;11054:93;:::i;:::-;11172:2;11167:3;11163:12;11156:19;;10961:220;;;:::o;11187:366::-;;11350:67;11414:2;11409:3;11350:67;:::i;:::-;11343:74;;11426:93;11515:3;11426:93;:::i;:::-;11544:2;11539:3;11535:12;11528:19;;11333:220;;;:::o;11559:366::-;;11722:67;11786:2;11781:3;11722:67;:::i;:::-;11715:74;;11798:93;11887:3;11798:93;:::i;:::-;11916:2;11911:3;11907:12;11900:19;;11705:220;;;:::o;11931:366::-;;12094:67;12158:2;12153:3;12094:67;:::i;:::-;12087:74;;12170:93;12259:3;12170:93;:::i;:::-;12288:2;12283:3;12279:12;12272:19;;12077:220;;;:::o;12303:108::-;12380:24;12398:5;12380:24;:::i;:::-;12375:3;12368:37;12358:53;;:::o;12417:118::-;12504:24;12522:5;12504:24;:::i;:::-;12499:3;12492:37;12482:53;;:::o;12541:157::-;12646:45;12666:24;12684:5;12666:24;:::i;:::-;12646:45;:::i;:::-;12641:3;12634:58;12624:74;;:::o;12704:112::-;12787:22;12803:5;12787:22;:::i;:::-;12782:3;12775:35;12765:51;;:::o;12822:397::-;;12977:75;13048:3;13039:6;12977:75;:::i;:::-;13077:2;13072:3;13068:12;13061:19;;13090:75;13161:3;13152:6;13090:75;:::i;:::-;13190:2;13185:3;13181:12;13174:19;;13210:3;13203:10;;12966:253;;;;;:::o;13225:222::-;;13356:2;13345:9;13341:18;13333:26;;13369:71;13437:1;13426:9;13422:17;13413:6;13369:71;:::i;:::-;13323:124;;;;:::o;13453:332::-;;13612:2;13601:9;13597:18;13589:26;;13625:71;13693:1;13682:9;13678:17;13669:6;13625:71;:::i;:::-;13706:72;13774:2;13763:9;13759:18;13750:6;13706:72;:::i;:::-;13579:206;;;;;:::o;13791:373::-;;13972:2;13961:9;13957:18;13949:26;;14021:9;14015:4;14011:20;14007:1;13996:9;13992:17;13985:47;14049:108;14152:4;14143:6;14049:108;:::i;:::-;14041:116;;13939:225;;;;:::o;14170:210::-;;14295:2;14284:9;14280:18;14272:26;;14308:65;14370:1;14359:9;14355:17;14346:6;14308:65;:::i;:::-;14262:118;;;;:::o;14386:1080::-;;14731:3;14720:9;14716:19;14708:27;;14745:71;14813:1;14802:9;14798:17;14789:6;14745:71;:::i;:::-;14826:72;14894:2;14883:9;14879:18;14870:6;14826:72;:::i;:::-;14945:9;14939:4;14935:20;14930:2;14919:9;14915:18;14908:48;14973:86;15054:4;15045:6;15037;14973:86;:::i;:::-;14965:94;;15069:72;15137:2;15126:9;15122:18;15113:6;15069:72;:::i;:::-;15151:73;15219:3;15208:9;15204:19;15195:6;15151:73;:::i;:::-;15272:9;15266:4;15262:20;15256:3;15245:9;15241:19;15234:49;15300:76;15371:4;15362:6;15300:76;:::i;:::-;15292:84;;15386:73;15454:3;15443:9;15439:19;15430:6;15386:73;:::i;:::-;14698:768;;;;;;;;;;;:::o;15472:309::-;;15621:2;15610:9;15606:18;15598:26;;15670:9;15664:4;15660:20;15656:1;15645:9;15641:17;15634:47;15698:76;15769:4;15760:6;15698:76;:::i;:::-;15690:84;;15588:193;;;;:::o;15787:313::-;;15938:2;15927:9;15923:18;15915:26;;15987:9;15981:4;15977:20;15973:1;15962:9;15958:17;15951:47;16015:78;16088:4;16079:6;16015:78;:::i;:::-;16007:86;;15905:195;;;;:::o;16106:419::-;;16310:2;16299:9;16295:18;16287:26;;16359:9;16353:4;16349:20;16345:1;16334:9;16330:17;16323:47;16387:131;16513:4;16387:131;:::i;:::-;16379:139;;16277:248;;;:::o;16531:419::-;;16735:2;16724:9;16720:18;16712:26;;16784:9;16778:4;16774:20;16770:1;16759:9;16755:17;16748:47;16812:131;16938:4;16812:131;:::i;:::-;16804:139;;16702:248;;;:::o;16956:419::-;;17160:2;17149:9;17145:18;17137:26;;17209:9;17203:4;17199:20;17195:1;17184:9;17180:17;17173:47;17237:131;17363:4;17237:131;:::i;:::-;17229:139;;17127:248;;;:::o;17381:419::-;;17585:2;17574:9;17570:18;17562:26;;17634:9;17628:4;17624:20;17620:1;17609:9;17605:17;17598:47;17662:131;17788:4;17662:131;:::i;:::-;17654:139;;17552:248;;;:::o;17806:419::-;;18010:2;17999:9;17995:18;17987:26;;18059:9;18053:4;18049:20;18045:1;18034:9;18030:17;18023:47;18087:131;18213:4;18087:131;:::i;:::-;18079:139;;17977:248;;;:::o;18231:419::-;;18435:2;18424:9;18420:18;18412:26;;18484:9;18478:4;18474:20;18470:1;18459:9;18455:17;18448:47;18512:131;18638:4;18512:131;:::i;:::-;18504:139;;18402:248;;;:::o;18656:419::-;;18860:2;18849:9;18845:18;18837:26;;18909:9;18903:4;18899:20;18895:1;18884:9;18880:17;18873:47;18937:131;19063:4;18937:131;:::i;:::-;18929:139;;18827:248;;;:::o;19081:419::-;;19285:2;19274:9;19270:18;19262:26;;19334:9;19328:4;19324:20;19320:1;19309:9;19305:17;19298:47;19362:131;19488:4;19362:131;:::i;:::-;19354:139;;19252:248;;;:::o;19506:419::-;;19710:2;19699:9;19695:18;19687:26;;19759:9;19753:4;19749:20;19745:1;19734:9;19730:17;19723:47;19787:131;19913:4;19787:131;:::i;:::-;19779:139;;19677:248;;;:::o;19931:419::-;;20135:2;20124:9;20120:18;20112:26;;20184:9;20178:4;20174:20;20170:1;20159:9;20155:17;20148:47;20212:131;20338:4;20212:131;:::i;:::-;20204:139;;20102:248;;;:::o;20356:419::-;;20560:2;20549:9;20545:18;20537:26;;20609:9;20603:4;20599:20;20595:1;20584:9;20580:17;20573:47;20637:131;20763:4;20637:131;:::i;:::-;20629:139;;20527:248;;;:::o;20781:222::-;;20912:2;20901:9;20897:18;20889:26;;20925:71;20993:1;20982:9;20978:17;20969:6;20925:71;:::i;:::-;20879:124;;;;:::o;21009:332::-;;21168:2;21157:9;21153:18;21145:26;;21181:71;21249:1;21238:9;21234:17;21225:6;21181:71;:::i;:::-;21262:72;21330:2;21319:9;21315:18;21306:6;21262:72;:::i;:::-;21135:206;;;;;:::o;21347:529::-;;21552:2;21541:9;21537:18;21529:26;;21565:71;21633:1;21622:9;21618:17;21609:6;21565:71;:::i;:::-;21646:72;21714:2;21703:9;21699:18;21690:6;21646:72;:::i;:::-;21765:9;21759:4;21755:20;21750:2;21739:9;21735:18;21728:48;21793:76;21864:4;21855:6;21793:76;:::i;:::-;21785:84;;21519:357;;;;;;:::o;21882:664::-;;22125:3;22114:9;22110:19;22102:27;;22139:71;22207:1;22196:9;22192:17;22183:6;22139:71;:::i;:::-;22220:72;22288:2;22277:9;22273:18;22264:6;22220:72;:::i;:::-;22302;22370:2;22359:9;22355:18;22346:6;22302:72;:::i;:::-;22384;22452:2;22441:9;22437:18;22428:6;22384:72;:::i;:::-;22466:73;22534:3;22523:9;22519:19;22510:6;22466:73;:::i;:::-;22092:454;;;;;;;;:::o;22552:214::-;;22679:2;22668:9;22664:18;22656:26;;22692:67;22756:1;22745:9;22741:17;22732:6;22692:67;:::i;:::-;22646:120;;;;:::o;22772:129::-;;22833:20;;:::i;:::-;22823:30;;22862:33;22890:4;22882:6;22862:33;:::i;:::-;22813:88;;;:::o;22907:75::-;;22973:2;22967:9;22957:19;;22947:35;:::o;22988:307::-;;23139:18;23131:6;23128:30;23125:2;;;23161:18;;:::i;:::-;23125:2;23199:29;23221:6;23199:29;:::i;:::-;23191:37;;23283:4;23277;23273:15;23265:23;;23054:241;;;:::o;23301:132::-;;23391:3;23383:11;;23421:4;23416:3;23412:14;23404:22;;23373:60;;;:::o;23439:114::-;;23540:5;23534:12;23524:22;;23513:40;;;:::o;23559:98::-;;23644:5;23638:12;23628:22;;23617:40;;;:::o;23663:99::-;;23749:5;23743:12;23733:22;;23722:40;;;:::o;23768:113::-;;23870:4;23865:3;23861:14;23853:22;;23843:38;;;:::o;23887:184::-;;24020:6;24015:3;24008:19;24060:4;24055:3;24051:14;24036:29;;23998:73;;;;:::o;24077:168::-;;24194:6;24189:3;24182:19;24234:4;24229:3;24225:14;24210:29;;24172:73;;;;:::o;24251:169::-;;24369:6;24364:3;24357:19;24409:4;24404:3;24400:14;24385:29;;24347:73;;;;:::o;24426:305::-;;24485:20;24503:1;24485:20;:::i;:::-;24480:25;;24519:20;24537:1;24519:20;:::i;:::-;24514:25;;24673:1;24605:66;24601:74;24598:1;24595:81;24592:2;;;24679:18;;:::i;:::-;24592:2;24723:1;24720;24716:9;24709:16;;24470:261;;;;:::o;24737:185::-;;24794:20;24812:1;24794:20;:::i;:::-;24789:25;;24828:20;24846:1;24828:20;:::i;:::-;24823:25;;24867:1;24857:2;;24872:18;;:::i;:::-;24857:2;24914:1;24911;24907:9;24902:14;;24779:143;;;;:::o;24928:348::-;;24991:20;25009:1;24991:20;:::i;:::-;24986:25;;25025:20;25043:1;25025:20;:::i;:::-;25020:25;;25213:1;25145:66;25141:74;25138:1;25135:81;25130:1;25123:9;25116:17;25112:105;25109:2;;;25220:18;;:::i;:::-;25109:2;25268:1;25265;25261:9;25250:20;;24976:300;;;;:::o;25282:191::-;;25342:20;25360:1;25342:20;:::i;:::-;25337:25;;25376:20;25394:1;25376:20;:::i;:::-;25371:25;;25415:1;25412;25409:8;25406:2;;;25420:18;;:::i;:::-;25406:2;25465:1;25462;25458:9;25450:17;;25327:146;;;;:::o;25479:96::-;;25545:24;25563:5;25545:24;:::i;:::-;25534:35;;25524:51;;;:::o;25581:90::-;;25658:5;25651:13;25644:21;25633:32;;25623:48;;;:::o;25677:77::-;;25743:5;25732:16;;25722:32;;;:::o;25760:126::-;;25837:42;25830:5;25826:54;25815:65;;25805:81;;;:::o;25892:77::-;;25958:5;25947:16;;25937:32;;;:::o;25975:86::-;;26050:4;26043:5;26039:16;26028:27;;26018:43;;;:::o;26067:154::-;26151:6;26146:3;26141;26128:30;26213:1;26204:6;26199:3;26195:16;26188:27;26118:103;;;:::o;26227:307::-;26295:1;26305:113;26319:6;26316:1;26313:13;26305:113;;;26404:1;26399:3;26395:11;26389:18;26385:1;26380:3;26376:11;26369:39;26341:2;26338:1;26334:10;26329:15;;26305:113;;;26436:6;26433:1;26430:13;26427:2;;;26516:1;26507:6;26502:3;26498:16;26491:27;26427:2;26276:258;;;;:::o;26540:320::-;;26621:1;26615:4;26611:12;26601:22;;26668:1;26662:4;26658:12;26689:18;26679:2;;26745:4;26737:6;26733:17;26723:27;;26679:2;26807;26799:6;26796:14;26776:18;26773:38;26770:2;;;26826:18;;:::i;:::-;26770:2;26591:269;;;;:::o;26866:281::-;26949:27;26971:4;26949:27;:::i;:::-;26941:6;26937:40;27079:6;27067:10;27064:22;27043:18;27031:10;27028:34;27025:62;27022:2;;;27090:18;;:::i;:::-;27022:2;27130:10;27126:2;27119:22;26909:238;;;:::o;27153:233::-;;27215:24;27233:5;27215:24;:::i;:::-;27206:33;;27261:66;27254:5;27251:77;27248:2;;;27331:18;;:::i;:::-;27248:2;27378:1;27371:5;27367:13;27360:20;;27196:190;;;:::o;27392:79::-;;27460:5;27449:16;;27439:32;;;:::o;27477:79::-;;27545:5;27534:16;;27524:32;;;:::o;27562:180::-;27610:77;27607:1;27600:88;27707:4;27704:1;27697:15;27731:4;27728:1;27721:15;27748:180;27796:77;27793:1;27786:88;27893:4;27890:1;27883:15;27917:4;27914:1;27907:15;27934:180;27982:77;27979:1;27972:88;28079:4;28076:1;28069:15;28103:4;28100:1;28093:15;28120:180;28168:77;28165:1;28158:88;28265:4;28262:1;28255:15;28289:4;28286:1;28279:15;28306:102;;28398:2;28394:7;28389:2;28382:5;28378:14;28374:28;28364:38;;28354:54;;;:::o;28414:222::-;28554:34;28550:1;28542:6;28538:14;28531:58;28623:5;28618:2;28610:6;28606:15;28599:30;28520:116;:::o;28642:221::-;28782:34;28778:1;28770:6;28766:14;28759:58;28851:4;28846:2;28838:6;28834:15;28827:29;28748:115;:::o;28869:179::-;29009:31;29005:1;28997:6;28993:14;28986:55;28975:73;:::o;29054:168::-;29194:20;29190:1;29182:6;29178:14;29171:44;29160:62;:::o;29228:173::-;29368:25;29364:1;29356:6;29352:14;29345:49;29334:67;:::o;29407:220::-;29547:34;29543:1;29535:6;29531:14;29524:58;29616:3;29611:2;29603:6;29599:15;29592:28;29513:114;:::o;29633:224::-;29773:34;29769:1;29761:6;29757:14;29750:58;29842:7;29837:2;29829:6;29825:15;29818:32;29739:118;:::o;29863:221::-;30003:34;29999:1;29991:6;29987:14;29980:58;30072:4;30067:2;30059:6;30055:15;30048:29;29969:115;:::o;30090:223::-;30230:34;30226:1;30218:6;30214:14;30207:58;30299:6;30294:2;30286:6;30282:15;30275:31;30196:117;:::o;30319:177::-;30459:29;30455:1;30447:6;30443:14;30436:53;30425:71;:::o;30502:181::-;30642:33;30638:1;30630:6;30626:14;30619:57;30608:75;:::o;30689:122::-;30762:24;30780:5;30762:24;:::i;:::-;30755:5;30752:35;30742:2;;30801:1;30798;30791:12;30742:2;30732:79;:::o;30817:122::-;30890:24;30908:5;30890:24;:::i;:::-;30883:5;30880:35;30870:2;;30929:1;30926;30919:12;30870:2;30860:79;:::o;30945:122::-;31018:24;31036:5;31018:24;:::i;:::-;31011:5;31008:35;30998:2;;31057:1;31054;31047:12;30998:2;30988:79;:::o" - }, - "methodIdentifiers": { - "addresses(bytes32)": "699f200f", - "allowance(address,address)": "dd62ed3e", - "approve(address,uint256)": "095ea7b3", - "balanceOf(address)": "70a08231", - "beginDispute(bytes32,uint256)": "1f379acc", - "decimals()": "313ce567", - "depositStake(uint256)": "cb82cc8f", - "faucet(address)": "b86d1d63", - "getCurrentReward(bytes32)": "a1e588a5", - "getNewValueCountbyQueryId(bytes32)": "77b03e0d", - "getReporterByTimestamp(bytes32,uint256)": "e07c5486", - "getStakerInfo(address)": "733bdef0", - "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", - "getVoteRounds(bytes32)": "248638e5", - "isDisputed(bytes32,uint256)": "64473df2", - "name()": "06fdde03", - "reporterByTimestamp(bytes32,uint256)": "217053c0", - "requestStakingWithdraw(uint256)": "8929f4c6", - "retrieveData(bytes32,uint256)": "c5958af9", - "submitValue(bytes32,bytes,uint256,bytes)": "5eaa9ced", - "symbol()": "95d89b41", - "timeBasedReward()": "96426d97", - "timeOfLastNewValue()": "6fd4f229", - "timestamps(bytes32,uint256)": "f25133f3", - "tipQuery(bytes32,uint256,bytes)": "ef0234ad", - "tips(bytes32)": "602bf227", - "tipsInContract()": "69d43bd3", - "totalSupply()": "18160ddd", - "transfer(address,uint256)": "a9059cbb", - "transferFrom(address,address,uint256)": "23b872dd", - "values(bytes32,uint256)": "091b50ff", - "voteCount()": "c6384071", - "voteRounds(bytes32,uint256)": "c979fe9f", - "withdrawStake()": "bed9d861" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_time\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_reward\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"NewReport\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"NewStaker\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"StakeWithdrawRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"StakeWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tip\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_totalTip\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"TipAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"addresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"beginDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"depositStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"faucet\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getReporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getVoteRounds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"isDisputed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"reporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"requestStakingWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"submitValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"timeBasedReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"timeOfLastNewValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"timestamps\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"tipQuery\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"tips\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tipsInContract\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"values\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"voteCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voteRounds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the amount that an address is alowed to spend of behalf of another\",\"params\":{\"_owner\":\"The address which owns the tokens\",\"_spender\":\"The address that will use the tokens\"},\"returns\":{\"_0\":\"uint256 The amount of allowed tokens\"}},\"approve(address,uint256)\":{\"details\":\"Approves amount that an address is alowed to spend of behalf of another\",\"params\":{\"_amount\":\"The amount that msg.sender is allowing spender to use\",\"_spender\":\"The address which is allowed to spend the tokens\"},\"returns\":{\"_0\":\"bool Whether the transaction succeeded\"}},\"balanceOf(address)\":{\"details\":\"Returns the balance of a given user.\",\"params\":{\"_account\":\"user address\"},\"returns\":{\"_0\":\"uint256 user's token balance\"}},\"beginDispute(bytes32,uint256)\":{\"details\":\"A mock function to create a dispute\",\"params\":{\"_queryId\":\"The tellorId to be disputed\",\"_timestamp\":\"the timestamp of the value to be disputed\"}},\"constructor\":{\"details\":\"Initializes playground parameters\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation.\",\"returns\":{\"_0\":\"uint8 the number of decimals; used only for display purposes\"}},\"depositStake(uint256)\":{\"details\":\"Allows a reporter to submit stake\",\"params\":{\"_amount\":\"amount of tokens to stake\"}},\"faucet(address)\":{\"details\":\"Public function to mint tokens to the given address\",\"params\":{\"_user\":\"The address which will receive the tokens\"}},\"getCurrentReward(bytes32)\":{\"details\":\"Calculates the current reward for a reporter given tips and time based reward\",\"params\":{\"_queryId\":\"is ID of the specific data feed\"},\"returns\":{\"_0\":\"uint256 tip amount for given query ID\",\"_1\":\"uint256 time based reward\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for a given ID\",\"params\":{\"_queryId\":\"the ID to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"getReporterByTimestamp(bytes32,uint256)\":{\"details\":\"Returns the reporter for a given timestamp and queryId\",\"params\":{\"_queryId\":\"bytes32 version of the queryId\",\"_timestamp\":\"uint256 timestamp of report\"},\"returns\":{\"_0\":\"address of data reporter\"}},\"getStakerInfo(address)\":{\"details\":\"Allows users to retrieve all information about a staker\",\"params\":{\"_staker\":\"address of staker inquiring about\"},\"returns\":{\"_0\":\"uint startDate of staking\",\"_1\":\"uint current amount staked\",\"_2\":\"uint current amount locked for withdrawal\",\"_3\":\"uint reporter's last reported timestamp\",\"_4\":\"uint total number of reports submitted by reporter\"}},\"getTimestampbyQueryIdandIndex(bytes32,uint256)\":{\"details\":\"Gets the timestamp for the value based on their index\",\"params\":{\"_index\":\"is the value index to look up\",\"_queryId\":\"is the queryId to look up\"},\"returns\":{\"_0\":\"uint256 timestamp\"}},\"getVoteRounds(bytes32)\":{\"details\":\"Returns an array of voting rounds for a given vote\",\"params\":{\"_hash\":\"is the identifier hash for a vote\"},\"returns\":{\"_0\":\"uint256[] memory dispute IDs of the vote rounds\"}},\"name()\":{\"details\":\"Returns the name of the token.\",\"returns\":{\"_0\":\"string name of the token\"}},\"requestStakingWithdraw(uint256)\":{\"details\":\"Allows a reporter to request to withdraw their stake\",\"params\":{\"_amount\":\"amount of staked tokens requesting to withdraw\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieves value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for queryId/timestamp submitted\"}},\"submitValue(bytes32,bytes,uint256,bytes)\":{\"details\":\"A mock function to submit a value to be read without reporter staking needed\",\"params\":{\"_nonce\":\"the current value count for the query id\",\"_queryData\":\"the data used by reporters to fulfill the data query\",\"_queryId\":\"the ID to associate the value to\",\"_value\":\"the value for the queryId\"}},\"symbol()\":{\"details\":\"Returns the symbol of the token.\",\"returns\":{\"_0\":\"string symbol of the token\"}},\"tipQuery(bytes32,uint256,bytes)\":{\"details\":\"Adds a tip to a given query ID.\",\"params\":{\"_amount\":\"is the amount of tips\",\"_queryData\":\"is the extra bytes data needed to fulfill the request\",\"_queryId\":\"is the queryId to look up\"}},\"totalSupply()\":{\"details\":\"Returns the total supply of the token.\",\"returns\":{\"_0\":\"uint256 total supply of token\"}},\"transfer(address,uint256)\":{\"details\":\"Transfer tokens from one user to another\",\"params\":{\"_amount\":\"The amount of tokens, including decimals, to transfer\",\"_recipient\":\"The destination address\"},\"returns\":{\"_0\":\"bool If the transfer succeeded\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfer tokens from user to another\",\"params\":{\"_amount\":\"The quantity of tokens to transfer\",\"_recipient\":\"The destination address\",\"_sender\":\"The address which owns the tokens\"},\"returns\":{\"_0\":\"bool Whether the transfer succeeded\"}},\"withdrawStake()\":{\"details\":\"Withdraws a reporter's stake\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/TellorPlayground.sol\":\"TellorPlayground\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/TellorPlayground.sol\":{\"keccak256\":\"0x97b87829bcbdad1369c31c895cf70f9f45e1460f0e6b24a9bbec91a1f0c29a7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3f50a79d03b1d9dbe933844153655604c6fcea2862a692e3491c4f5030af89\",\"dweb:/ipfs/QmRUaF662yxcfod5uvCzz9G2qDMEv2sFBoRAXN99e2BKYe\"]}},\"version\":1}" - } - }, - "contracts/UsingTellor.sol": { - "UsingTellor": { - "abi": [ - { - "inputs": [ - { - "internalType": "address payable", - "name": "_tellor", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentValue", - "outputs": [ - { - "internalType": "bool", - "name": "_ifRetrieve", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_timestampRetrieved", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getDataBefore", - "outputs": [ - { - "internalType": "bool", - "name": "_ifRetrieve", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_timestampRetrieved", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getIndexForDataBefore", - "outputs": [ - { - "internalType": "bool", - "name": "_found", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getNewValueCountbyQueryId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "name": "getTimestampbyQueryIdandIndex", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "isInDispute", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "retrieveData", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "tellor", - "outputs": [ - { - "internalType": "contract ITellor", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "evm": { - "bytecode": { - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:861:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "78:88:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "88:22:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "103:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "97:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "97:13:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "88:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "154:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_address_payable", - "nodeType": "YulIdentifier", - "src": "119:34:4" - }, - "nodeType": "YulFunctionCall", - "src": "119:41:4" - }, - "nodeType": "YulExpressionStatement", - "src": "119:41:4" - } - ] - }, - "name": "abi_decode_t_address_payable_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "56:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "64:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "72:5:4", - "type": "" - } - ], - "src": "7:159:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "257:215:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "303:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "315:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "305:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "305:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "305:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "278:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "287:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "274:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "274:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "299:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "270:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "270:32:4" - }, - "nodeType": "YulIf", - "src": "267:2:4" - }, - { - "nodeType": "YulBlock", - "src": "329:136:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "344:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "358:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "348:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "373:82:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "427:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "438:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "423:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "423:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "447:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address_payable_fromMemory", - "nodeType": "YulIdentifier", - "src": "383:39:4" - }, - "nodeType": "YulFunctionCall", - "src": "383:72:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "373:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "227:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "238:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "250:6:4", - "type": "" - } - ], - "src": "172:300:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "531:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "541:35:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "570:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "552:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "552:24:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "541:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "513:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "523:7:4", - "type": "" - } - ], - "src": "478:104:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "633:81:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "643:65:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "658:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "665:42:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "654:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "654:54:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "643:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "615:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "625:7:4", - "type": "" - } - ], - "src": "588:126:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "771:87:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "836:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "845:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "848:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "838:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "838:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "838:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "794:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "827:5:4" - } - ], - "functionName": { - "name": "cleanup_t_address_payable", - "nodeType": "YulIdentifier", - "src": "801:25:4" - }, - "nodeType": "YulFunctionCall", - "src": "801:32:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "791:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "791:43:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "784:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "784:51:4" - }, - "nodeType": "YulIf", - "src": "781:2:4" - } - ] - }, - "name": "validator_revert_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "764:5:4", - "type": "" - } - ], - "src": "720:138:4" - } - ] - }, - "contents": "{\n\n function abi_decode_t_address_payable_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_payable_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n}\n", - "id": 4, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "60806040523480156200001157600080fd5b506040516200181238038062001812833981810160405281019062000037919062000095565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200010f565b6000815190506200008f81620000f5565b92915050565b600060208284031215620000a857600080fd5b6000620000b8848285016200007e565b91505092915050565b6000620000ce82620000d5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010081620000c1565b81146200010c57600080fd5b50565b6116f3806200011f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212208413c935ca1d8949f593d38a5f10a1a710fa0690cf5ff34818296f71442d997364736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x1812 CODESIZE SUB DUP1 PUSH3 0x1812 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x37 SWAP2 SWAP1 PUSH3 0x95 JUMP JUMPDEST DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP PUSH3 0x10F JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x8F DUP2 PUSH3 0xF5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xA8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH3 0xB8 DUP5 DUP3 DUP6 ADD PUSH3 0x7E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCE DUP3 PUSH3 0xD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0x100 DUP2 PUSH3 0xC1 JUMP JUMPDEST DUP2 EQ PUSH3 0x10C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16F3 DUP1 PUSH3 0x11F PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP5 SGT 0xC9 CALLDATALOAD 0xCA SAR DUP10 0x49 CREATE2 SWAP4 0xD3 DUP11 0x5F LT LOG1 0xA7 LT STATICCALL MOD SWAP1 0xCF 0x5F RETURN 0x48 XOR 0x29 PUSH16 0x71442D997364736F6C63430008030033 ", - "sourceMap": "247:8373:1:-:0;;;451:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;515:7;498:6;;:25;;;;;;;;;;;;;;;;;;451:79;247:8373;;7:159:4;;103:6;97:13;88:22;;119:41;154:5;119:41;:::i;:::-;78:88;;;;:::o;172:300::-;;299:2;287:9;278:7;274:23;270:32;267:2;;;315:1;312;305:12;267:2;358:1;383:72;447:7;438:6;427:9;423:22;383:72;:::i;:::-;373:82;;329:136;257:215;;;;:::o;478:104::-;;552:24;570:5;552:24;:::i;:::-;541:35;;531:51;;;:::o;588:126::-;;665:42;658:5;654:54;643:65;;633:81;;;:::o;720:138::-;801:32;827:5;801:32;:::i;:::-;794:5;791:43;781:2;;848:1;845;838:12;781:2;771:87;:::o;247:8373:1:-;;;;;;;" - }, - "deployedBytecode": { - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:14118:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "137:532:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "147:90:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "229:6:4" - } - ], - "functionName": { - "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulIdentifier", - "src": "172:56:4" - }, - "nodeType": "YulFunctionCall", - "src": "172:64:4" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "156:15:4" - }, - "nodeType": "YulFunctionCall", - "src": "156:81:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "147:5:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "246:16:4", - "value": { - "name": "array", - "nodeType": "YulIdentifier", - "src": "257:5:4" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "250:3:4", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "278:5:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "285:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "271:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "271:21:4" - }, - "nodeType": "YulExpressionStatement", - "src": "271:21:4" - }, - { - "nodeType": "YulAssignment", - "src": "293:23:4", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "304:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "311:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "300:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "300:16:4" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "293:3:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "325:17:4", - "value": { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "336:6:4" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "329:3:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "391:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "400:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "403:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "393:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "393:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "393:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "361:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "370:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "378:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "366:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "366:17:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "357:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "357:27:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "386:3:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "354:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "354:36:4" - }, - "nodeType": "YulIf", - "src": "351:2:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "476:187:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "490:21:4", - "value": { - "name": "src", - "nodeType": "YulIdentifier", - "src": "508:3:4" - }, - "variables": [ - { - "name": "elementPos", - "nodeType": "YulTypedName", - "src": "494:10:4", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "531:3:4" - }, - { - "arguments": [ - { - "name": "elementPos", - "nodeType": "YulIdentifier", - "src": "568:10:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "580:3:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256_fromMemory", - "nodeType": "YulIdentifier", - "src": "536:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "536:48:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "524:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "524:61:4" - }, - "nodeType": "YulExpressionStatement", - "src": "524:61:4" - }, - { - "nodeType": "YulAssignment", - "src": "598:21:4", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "609:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "614:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "605:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "605:14:4" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "598:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "632:21:4", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "643:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "648:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "639:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "639:14:4" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "632:3:4" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "438:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "441:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "435:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "435:13:4" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "449:18:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "451:14:4", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "460:1:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "463:1:4", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "456:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "456:9:4" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "451:1:4" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "420:14:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "422:10:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "431:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "426:1:4", - "type": "" - } - ] - } - ] - }, - "src": "416:247:4" - } - ] - }, - "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "107:6:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "115:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "123:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "131:5:4", - "type": "" - } - ], - "src": "24:645:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "769:258:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "779:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "845:6:4" - } - ], - "functionName": { - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "804:40:4" - }, - "nodeType": "YulFunctionCall", - "src": "804:48:4" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "788:15:4" - }, - "nodeType": "YulFunctionCall", - "src": "788:65:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "779:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "869:5:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "876:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "862:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "862:21:4" - }, - "nodeType": "YulExpressionStatement", - "src": "862:21:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "892:27:4", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "907:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "914:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "903:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "903:16:4" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "896:3:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "957:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "966:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "969:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "959:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "959:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "959:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "938:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "943:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "934:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "934:16:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "952:3:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "931:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "931:25:4" - }, - "nodeType": "YulIf", - "src": "928:2:4" - }, - { - "expression": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "1004:3:4" - }, - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "1009:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1014:6:4" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "982:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "982:39:4" - }, - "nodeType": "YulExpressionStatement", - "src": "982:39:4" - } - ] - }, - "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "742:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "747:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "755:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "763:5:4", - "type": "" - } - ], - "src": "675:352:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1096:80:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1106:22:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1121:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1115:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "1115:13:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1106:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1164:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_address", - "nodeType": "YulIdentifier", - "src": "1137:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "1137:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1137:33:4" - } - ] - }, - "name": "abi_decode_t_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1074:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1082:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1090:5:4", - "type": "" - } - ], - "src": "1033:143:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1287:230:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1336:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1345:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1348:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1338:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1338:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1338:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1315:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1323:4:4", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1311:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1311:17:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1330:3:4" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1307:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1307:27:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1300:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1300:35:4" - }, - "nodeType": "YulIf", - "src": "1297:2:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1361:27:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1381:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1375:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "1375:13:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1365:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1397:114:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1484:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1492:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1480:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1480:17:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1499:6:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1507:3:4" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "1406:73:4" - }, - "nodeType": "YulFunctionCall", - "src": "1406:105:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1397:5:4" - } - ] - } - ] - }, - "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1265:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1273:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1281:5:4", - "type": "" - } - ], - "src": "1199:318:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1575:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1585:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1607:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1594:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "1594:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1585:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1650:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_bytes32", - "nodeType": "YulIdentifier", - "src": "1623:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "1623:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1623:33:4" - } - ] - }, - "name": "abi_decode_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1553:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1561:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1569:5:4", - "type": "" - } - ], - "src": "1523:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1753:214:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1802:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1811:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1814:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1804:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1804:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1804:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1781:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1789:4:4", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1777:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1777:17:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1796:3:4" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1773:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1773:27:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1766:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1766:35:4" - }, - "nodeType": "YulIf", - "src": "1763:2:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1827:27:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1847:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1841:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "1841:13:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1831:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1863:98:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1934:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1942:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1930:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1930:17:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1949:6:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1957:3:4" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "1872:57:4" - }, - "nodeType": "YulFunctionCall", - "src": "1872:89:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1863:5:4" - } - ] - } - ] - }, - "name": "abi_decode_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1731:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1739:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1747:5:4", - "type": "" - } - ], - "src": "1681:286:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2025:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2035:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2057:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2044:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "2044:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2035:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2100:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "2073:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "2073:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2073:33:4" - } - ] - }, - "name": "abi_decode_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2003:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2011:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2019:5:4", - "type": "" - } - ], - "src": "1973:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2181:80:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2191:22:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2206:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2200:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "2200:13:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2191:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2249:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "2222:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "2222:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2222:33:4" - } - ] - }, - "name": "abi_decode_t_uint256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2159:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2167:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2175:5:4", - "type": "" - } - ], - "src": "2118:143:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2344:207:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2390:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2399:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2402:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2392:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2392:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2392:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2365:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2374:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2361:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2361:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2386:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2357:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2357:32:4" - }, - "nodeType": "YulIf", - "src": "2354:2:4" - }, - { - "nodeType": "YulBlock", - "src": "2416:128:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2431:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2445:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2435:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2460:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2506:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2517:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2502:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2502:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2526:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "2470:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "2470:64:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2460:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2314:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2325:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2337:6:4", - "type": "" - } - ], - "src": "2267:284:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2659:318:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2705:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2714:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2717:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2707:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2707:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2707:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2680:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2689:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2676:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2676:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2701:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2672:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2672:32:4" - }, - "nodeType": "YulIf", - "src": "2669:2:4" - }, - { - "nodeType": "YulBlock", - "src": "2731:239:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2746:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2770:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2781:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2766:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2766:17:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2760:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "2760:24:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2750:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2831:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2840:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2843:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2833:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2833:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2833:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2803:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2811:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2800:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "2800:30:4" - }, - "nodeType": "YulIf", - "src": "2797:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "2861:99:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2932:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2943:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2928:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2928:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2952:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "2871:56:4" - }, - "nodeType": "YulFunctionCall", - "src": "2871:89:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2861:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2629:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2640:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2652:6:4", - "type": "" - } - ], - "src": "2557:420:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3049:196:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3095:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3104:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3107:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3097:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3097:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3097:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3070:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3079:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3066:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3066:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3091:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3062:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3062:32:4" - }, - "nodeType": "YulIf", - "src": "3059:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3121:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3136:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3150:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3140:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3165:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3200:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3211:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3196:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3196:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3220:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "3175:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3175:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3165:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3019:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3030:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3042:6:4", - "type": "" - } - ], - "src": "2983:262:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3334:324:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3380:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3389:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3392:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3382:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3382:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3382:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3355:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3364:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3351:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3351:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3376:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3347:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3347:32:4" - }, - "nodeType": "YulIf", - "src": "3344:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3406:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3421:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3435:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3425:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3450:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3485:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3496:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3481:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3481:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3505:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "3460:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3460:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3450:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "3533:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3548:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3562:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3552:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3578:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3613:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3624:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3609:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3609:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3633:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "3588:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3588:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3578:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3296:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3307:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3319:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3327:6:4", - "type": "" - } - ], - "src": "3251:407:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3750:302:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3796:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3805:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3808:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3798:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3798:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3798:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3771:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3780:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3767:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3767:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3792:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3763:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3763:32:4" - }, - "nodeType": "YulIf", - "src": "3760:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3822:223:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3837:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3861:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3872:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3857:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3857:17:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3851:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "3851:24:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3841:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3922:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3931:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3934:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3924:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3924:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3924:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3894:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3902:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3891:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "3891:30:4" - }, - "nodeType": "YulIf", - "src": "3888:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "3952:83:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4007:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4018:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4003:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4003:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4027:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "3962:40:4" - }, - "nodeType": "YulFunctionCall", - "src": "3962:73:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3952:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3720:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3731:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3743:6:4", - "type": "" - } - ], - "src": "3664:388:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4135:207:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4181:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4190:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4193:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4183:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4183:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4183:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4156:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4165:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4152:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4152:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4177:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4148:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4148:32:4" - }, - "nodeType": "YulIf", - "src": "4145:2:4" - }, - { - "nodeType": "YulBlock", - "src": "4207:128:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4222:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4236:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4226:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4251:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4297:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4308:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4293:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4293:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4317:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256_fromMemory", - "nodeType": "YulIdentifier", - "src": "4261:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "4261:64:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4251:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4105:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4116:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4128:6:4", - "type": "" - } - ], - "src": "4058:284:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4407:50:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4424:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4444:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bool", - "nodeType": "YulIdentifier", - "src": "4429:14:4" - }, - "nodeType": "YulFunctionCall", - "src": "4429:21:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4417:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4417:34:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4417:34:4" - } - ] - }, - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4395:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4402:3:4", - "type": "" - } - ], - "src": "4348:109:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4528:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4545:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4568:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4550:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "4550:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4538:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4538:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4538:37:4" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4516:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4523:3:4", - "type": "" - } - ], - "src": "4463:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4670:74:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4687:3:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4730:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4712:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "4712:24:4" - } - ], - "functionName": { - "name": "leftAlign_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4692:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "4692:45:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4680:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4680:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4680:58:4" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4658:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4665:3:4", - "type": "" - } - ], - "src": "4587:157:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4840:270:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4850:52:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4896:5:4" - } - ], - "functionName": { - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "4864:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "4864:38:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4854:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4911:77:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4976:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4981:6:4" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "4918:57:4" - }, - "nodeType": "YulFunctionCall", - "src": "4918:70:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4911:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5023:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5030:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5019:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5019:16:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5037:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5042:6:4" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "4997:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "4997:52:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4997:52:4" - }, - { - "nodeType": "YulAssignment", - "src": "5058:46:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5069:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5096:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "5074:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "5074:29:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5065:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5065:39:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5058:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4821:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4828:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4836:3:4", - "type": "" - } - ], - "src": "4750:360:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5197:82:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5214:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5266:5:4" - } - ], - "functionName": { - "name": "convert_t_contract$_ITellor_$2435_to_t_address", - "nodeType": "YulIdentifier", - "src": "5219:46:4" - }, - "nodeType": "YulFunctionCall", - "src": "5219:53:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5207:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5207:66:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5207:66:4" - } - ] - }, - "name": "abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5185:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5192:3:4", - "type": "" - } - ], - "src": "5116:163:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5435:151:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5452:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5573:5:4" - } - ], - "functionName": { - "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", - "nodeType": "YulIdentifier", - "src": "5457:115:4" - }, - "nodeType": "YulFunctionCall", - "src": "5457:122:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5445:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5445:135:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5445:135:4" - } - ] - }, - "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5423:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5430:3:4", - "type": "" - } - ], - "src": "5285:301:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5657:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5674:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5697:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "5679:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "5679:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5667:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5667:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5667:37:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5645:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5652:3:4", - "type": "" - } - ], - "src": "5592:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5799:74:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5816:3:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5859:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "5841:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "5841:24:4" - } - ], - "functionName": { - "name": "leftAlign_t_uint256", - "nodeType": "YulIdentifier", - "src": "5821:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "5821:45:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5809:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5809:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5809:58:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5787:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5794:3:4", - "type": "" - } - ], - "src": "5716:157:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6023:253:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6096:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6105:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "6034:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "6034:75:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6034:75:4" - }, - { - "nodeType": "YulAssignment", - "src": "6118:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6129:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6134:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6125:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6125:12:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6118:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6209:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6218:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "6147:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "6147:75:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6147:75:4" - }, - { - "nodeType": "YulAssignment", - "src": "6231:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6242:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6247:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6238:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6238:12:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6231:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6260:10:4", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6267:3:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6260:3:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5994:3:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6000:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6008:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6019:3:4", - "type": "" - } - ], - "src": "5879:397:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6374:118:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6384:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6396:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6407:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6392:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6392:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6384:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6458:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6471:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6482:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6467:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6467:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "6420:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "6420:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6420:65:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6346:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6358:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6369:4:4", - "type": "" - } - ], - "src": "6282:210:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6664:351:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6674:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6686:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6697:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6682:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6682:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6674:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6748:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6761:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6772:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6757:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6757:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "6710:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "6710:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6710:65:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6796:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6807:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6792:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6792:18:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6816:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6822:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6812:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6812:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6785:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "6785:48:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6785:48:4" - }, - { - "nodeType": "YulAssignment", - "src": "6842:84:4", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6912:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6921:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "6850:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "6850:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6842:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "6980:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6993:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7004:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6989:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6989:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "6936:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "6936:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6936:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6620:9:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6632:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6640:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6648:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6659:4:4", - "type": "" - } - ], - "src": "6498:517:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7141:200:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7151:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7163:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7174:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7159:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7159:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7151:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7225:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7238:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7249:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7234:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7234:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "7187:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "7187:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7187:65:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7306:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7319:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7330:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7315:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7315:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "7262:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7262:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7262:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7105:9:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7117:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7125:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7136:4:4", - "type": "" - } - ], - "src": "7021:320:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7445:124:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7455:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7467:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7478:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7463:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7463:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7455:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7535:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7548:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7559:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7544:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7544:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "7491:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7491:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7491:71:4" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7417:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7429:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7440:4:4", - "type": "" - } - ], - "src": "7347:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7701:206:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7711:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7723:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7734:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7719:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7719:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7711:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7791:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7804:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7815:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7800:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7800:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "7747:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7747:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7747:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7872:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7885:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7896:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7881:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7881:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "7828:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7828:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7828:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7665:9:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7677:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7685:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7696:4:4", - "type": "" - } - ], - "src": "7575:332:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8029:193:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8039:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8051:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8062:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8047:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8047:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8039:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8086:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8097:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8082:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8082:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8105:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8111:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8101:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8101:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8075:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "8075:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8075:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "8131:84:4", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8201:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8210:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8139:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "8139:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8131:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8001:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8013:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8024:4:4", - "type": "" - } - ], - "src": "7913:309:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8342:140:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8352:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8364:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8375:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8360:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8360:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8352:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8448:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8461:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8472:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8457:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8457:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "8388:59:4" - }, - "nodeType": "YulFunctionCall", - "src": "8388:87:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8388:87:4" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_ITellor_$2435__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8314:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8326:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8337:4:4", - "type": "" - } - ], - "src": "8228:254:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8671:209:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8681:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8693:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8704:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8689:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8689:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8681:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8846:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8859:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8870:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8855:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8855:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "8717:128:4" - }, - "nodeType": "YulFunctionCall", - "src": "8717:156:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8717:156:4" - } - ] - }, - "name": "abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8643:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8655:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8666:4:4", - "type": "" - } - ], - "src": "8488:392:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8984:124:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8994:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9006:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9017:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9002:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9002:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8994:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9074:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9087:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9098:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9083:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9083:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "9030:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "9030:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9030:71:4" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8956:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8968:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8979:4:4", - "type": "" - } - ], - "src": "8886:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9155:88:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9165:30:4", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_unbounded", - "nodeType": "YulIdentifier", - "src": "9175:18:4" - }, - "nodeType": "YulFunctionCall", - "src": "9175:20:4" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "9165:6:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "9224:6:4" - }, - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9232:4:4" - } - ], - "functionName": { - "name": "finalize_allocation", - "nodeType": "YulIdentifier", - "src": "9204:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "9204:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9204:33:4" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9139:4:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "9148:6:4", - "type": "" - } - ], - "src": "9114:129:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9289:35:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9299:19:4", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9315:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "9309:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "9309:9:4" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "9299:6:4" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "9282:6:4", - "type": "" - } - ], - "src": "9249:75:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9412:229:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9517:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "9519:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "9519:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9519:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9489:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9497:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9486:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "9486:30:4" - }, - "nodeType": "YulIf", - "src": "9483:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "9549:25:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9561:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9569:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "9557:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9557:17:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9549:4:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9611:23:4", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9623:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9629:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9619:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9619:15:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9611:4:4" - } - ] - } - ] - }, - "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9396:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9407:4:4", - "type": "" - } - ], - "src": "9330:311:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9713:241:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9818:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "9820:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "9820:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9820:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9790:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9798:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9787:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "9787:30:4" - }, - "nodeType": "YulIf", - "src": "9784:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "9850:37:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9880:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "9858:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "9858:29:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9850:4:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9924:23:4", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9936:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9942:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9932:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9932:15:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9924:4:4" - } - ] - } - ] - }, - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9697:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9708:4:4", - "type": "" - } - ], - "src": "9647:307:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10018:40:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10029:22:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10045:5:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10039:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "10039:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10029:6:4" - } - ] - } - ] - }, - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10001:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10011:6:4", - "type": "" - } - ], - "src": "9960:98:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10159:73:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10176:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10181:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10169:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "10169:19:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10169:19:4" - }, - { - "nodeType": "YulAssignment", - "src": "10197:29:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10216:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10221:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10212:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10212:14:4" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "10197:11:4" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10131:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10136:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "10147:11:4", - "type": "" - } - ], - "src": "10064:168:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10282:261:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10292:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10315:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10297:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10297:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10292:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10326:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10349:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10331:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10331:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10326:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10489:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "10491:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "10491:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10491:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10410:1:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10417:66:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10485:1:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10413:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10413:74:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10407:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "10407:81:4" - }, - "nodeType": "YulIf", - "src": "10404:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "10521:16:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10532:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10535:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10528:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10528:9:4" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "10521:3:4" - } - ] - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "10269:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "10272:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "10278:3:4", - "type": "" - } - ], - "src": "10238:305:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10591:143:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10601:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10624:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10606:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10606:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10601:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10635:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10658:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10640:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10640:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10635:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10682:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "10684:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "10684:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10684:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10679:1:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10672:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "10672:9:4" - }, - "nodeType": "YulIf", - "src": "10669:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "10714:14:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10723:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10726:1:4" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "10719:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10719:9:4" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "10714:1:4" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "10580:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "10583:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "10589:1:4", - "type": "" - } - ], - "src": "10549:185:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10785:146:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10795:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10818:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10800:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10800:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10795:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10829:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10852:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10834:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10834:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10829:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10876:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "10878:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "10878:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10878:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10870:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10873:1:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10867:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "10867:8:4" - }, - "nodeType": "YulIf", - "src": "10864:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "10908:17:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10920:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10923:1:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10916:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10916:9:4" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "10908:4:4" - } - ] - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "10771:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "10774:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "10780:4:4", - "type": "" - } - ], - "src": "10740:191:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10982:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10992:35:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11021:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "11003:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "11003:24:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "10992:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10964:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "10974:7:4", - "type": "" - } - ], - "src": "10937:96:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11081:48:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11091:32:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11116:5:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11109:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "11109:13:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11102:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "11102:21:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11091:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11063:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11073:7:4", - "type": "" - } - ], - "src": "11039:90:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11180:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11190:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11201:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11190:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11162:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11172:7:4", - "type": "" - } - ], - "src": "11135:77:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11348:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11358:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11369:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11358:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11330:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11340:7:4", - "type": "" - } - ], - "src": "11218:162:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11431:81:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11441:65:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11456:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11463:42:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11452:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "11452:54:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11441:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11413:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11423:7:4", - "type": "" - } - ], - "src": "11386:126:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11563:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11573:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11584:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11573:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11545:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11555:7:4", - "type": "" - } - ], - "src": "11518:77:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11677:82:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11687:66:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11747:5:4" - } - ], - "functionName": { - "name": "convert_t_contract$_ITellor_$2435_to_t_uint160", - "nodeType": "YulIdentifier", - "src": "11700:46:4" - }, - "nodeType": "YulFunctionCall", - "src": "11700:53:4" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "11687:9:4" - } - ] - } - ] - }, - "name": "convert_t_contract$_ITellor_$2435_to_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11657:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "11667:9:4", - "type": "" - } - ], - "src": "11601:158:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11841:53:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11851:37:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11882:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "11864:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "11864:24:4" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "11851:9:4" - } - ] - } - ] - }, - "name": "convert_t_contract$_ITellor_$2435_to_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11821:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "11831:9:4", - "type": "" - } - ], - "src": "11765:129:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12045:152:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12055:136:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12184:5:4" - } - ], - "functionName": { - "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", - "nodeType": "YulIdentifier", - "src": "12081:102:4" - }, - "nodeType": "YulFunctionCall", - "src": "12081:109:4" - } - ], - "functionName": { - "name": "shift_left_0", - "nodeType": "YulIdentifier", - "src": "12068:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "12068:123:4" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "12055:9:4" - } - ] - } - ] - }, - "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12025:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "12035:9:4", - "type": "" - } - ], - "src": "11900:297:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12252:258:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12262:10:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12271:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "12266:1:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12331:63:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12356:3:4" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12361:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12352:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12352:11:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "12375:3:4" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12380:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12371:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12371:11:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12365:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "12365:18:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12345:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12345:39:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12345:39:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12292:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12295:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12289:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12289:13:4" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "12303:19:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12305:15:4", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12314:1:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12317:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12310:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12310:10:4" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12305:1:4" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "12285:3:4", - "statements": [] - }, - "src": "12281:113:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12428:76:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12478:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12483:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12474:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12474:16:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12492:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12467:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12467:27:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12467:27:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12409:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12412:6:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12406:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12406:13:4" - }, - "nodeType": "YulIf", - "src": "12403:2:4" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "12234:3:4", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "12239:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "12244:6:4", - "type": "" - } - ], - "src": "12203:307:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12559:238:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12569:58:4", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12591:6:4" - }, - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "12621:4:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "12599:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "12599:27:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12587:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12587:40:4" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "12573:10:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12738:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "12740:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "12740:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12740:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12681:10:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12693:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12678:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12678:34:4" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12717:10:4" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12729:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12714:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12714:22:4" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "12675:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12675:62:4" - }, - "nodeType": "YulIf", - "src": "12672:2:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12776:2:4", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12780:10:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12769:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12769:22:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12769:22:4" - } - ] - }, - "name": "finalize_allocation", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "12545:6:4", - "type": "" - }, - { - "name": "size", - "nodeType": "YulTypedName", - "src": "12553:4:4", - "type": "" - } - ], - "src": "12516:281:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12850:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12860:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12871:5:4" - }, - "variableNames": [ - { - "name": "aligned", - "nodeType": "YulIdentifier", - "src": "12860:7:4" - } - ] - } - ] - }, - "name": "leftAlign_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12832:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "aligned", - "nodeType": "YulTypedName", - "src": "12842:7:4", - "type": "" - } - ], - "src": "12803:79:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12935:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12945:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12956:5:4" - }, - "variableNames": [ - { - "name": "aligned", - "nodeType": "YulIdentifier", - "src": "12945:7:4" - } - ] - } - ] - }, - "name": "leftAlign_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12917:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "aligned", - "nodeType": "YulTypedName", - "src": "12927:7:4", - "type": "" - } - ], - "src": "12888:79:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13001:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13018:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13021:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13011:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13011:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13011:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13115:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13118:4:4", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13108:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13108:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13108:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13139:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13142:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13132:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13132:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13132:15:4" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "12973:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13187:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13204:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13207:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13197:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13197:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13197:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13301:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13304:4:4", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13294:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13294:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13294:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13325:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13328:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13318:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13318:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13318:15:4" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "13159:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13373:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13390:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13393:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13383:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13383:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13383:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13487:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13490:4:4", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13480:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13480:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13480:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13511:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13514:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13504:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13504:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13504:15:4" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "13345:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13579:54:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13589:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13607:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13614:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13603:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13603:14:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13623:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "13619:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13619:7:4" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13599:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13599:28:4" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "13589:6:4" - } - ] - } - ] - }, - "name": "round_up_to_mul_of_32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13562:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "13572:6:4", - "type": "" - } - ], - "src": "13531:102:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13680:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13690:34:4", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13715:1:4", - "type": "", - "value": "0" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13718:5:4" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13711:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13711:13:4" - }, - "variableNames": [ - { - "name": "newValue", - "nodeType": "YulIdentifier", - "src": "13690:8:4" - } - ] - } - ] - }, - "name": "shift_left_0", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13661:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "newValue", - "nodeType": "YulTypedName", - "src": "13671:8:4", - "type": "" - } - ], - "src": "13639:92:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13780:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13837:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13846:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13849:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13839:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13839:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13839:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13803:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13828:5:4" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "13810:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "13810:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13800:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "13800:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13793:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13793:43:4" - }, - "nodeType": "YulIf", - "src": "13790:2:4" - } - ] - }, - "name": "validator_revert_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13773:5:4", - "type": "" - } - ], - "src": "13737:122:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13908:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13965:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13974:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13977:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13967:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13967:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13967:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13931:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13956:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "13938:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "13938:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13928:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "13928:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13921:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13921:43:4" - }, - "nodeType": "YulIf", - "src": "13918:2:4" - } - ] - }, - "name": "validator_revert_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13901:5:4", - "type": "" - } - ], - "src": "13865:122:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14036:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14093:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14102:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14105:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14095:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "14095:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "14095:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14059:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14084:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "14066:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "14066:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "14056:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "14056:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14049:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "14049:43:4" - }, - "nodeType": "YulIf", - "src": "14046:2:4" - } - ] - }, - "name": "validator_revert_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "14029:5:4", - "type": "" - } - ], - "src": "13993:122:4" - } - ] - }, - "contents": "{\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n mstore(array, length) dst := add(array, 0x20)\n let src := offset\n if gt(add(src, mul(length, 0x20)), end) { revert(0, 0) }\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementPos := src\n mstore(dst, abi_decode_t_uint256_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n src := add(src, 0x20)\n }\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_memory_to_memory(src, dst, length)\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr_fromMemory(add(offset, 0x20), length, end)\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_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ITellor_$2435_to_t_address(value))\n }\n\n function abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value1, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n }\n\n function abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_contract$_ITellor_$2435__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\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 allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_contract$_ITellor_$2435_to_t_address(value) -> converted {\n converted := convert_t_contract$_ITellor_$2435_to_t_uint160(value)\n }\n\n function convert_t_contract$_ITellor_$2435_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(value)\n }\n\n function convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(value) -> converted {\n converted := shift_left_0(cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value))\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function shift_left_0(value) -> newValue {\n newValue :=\n\n shl(0, value)\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", - "id": 4, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": {}, - "linkReferences": {}, - "object": "608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212208413c935ca1d8949f593d38a5f10a1a710fa0690cf5ff34818296f71442d997364736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP5 SGT 0xC9 CALLDATALOAD 0xCA SAR DUP10 0x49 CREATE2 SWAP4 0xD3 DUP11 0x5F LT LOG1 0xA7 LT STATICCALL MOD SWAP1 0xCF 0x5F RETURN 0x48 XOR 0x29 PUSH16 0x71442D997364736F6C63430008030033 ", - "sourceMap": "247:8373:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;274:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3013:2155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6929:947;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5390:484;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1919:657;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;891:619;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;8113:505;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6108:528;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;274:21;;;;;;;;;;;;:::o;3013:2155::-;3127:11;3140:14;3170;3187:35;3213:8;3187:25;:35::i;:::-;3170:52;;3246:1;3237:6;:10;3233:1902;;;3263:14;3291:13;3307:1;3291:17;;3322:11;3345:1;3336:6;:10;;;;:::i;:::-;3322:24;;3360:13;3461:46;3491:8;3501:5;3461:29;:46::i;:::-;3453:54;;3534:10;3525:5;:19;3521:42;;3554:5;3561:1;3546:17;;;;;;;;;;;3521:42;3585:44;3615:8;3625:3;3585:29;:44::i;:::-;3577:52;;3655:10;3647:5;:18;3643:42;;;3675:4;3681:3;3667:18;;;;;;;;;;;3643:42;3775:1350;3782:4;3775:1350;;;3839:5;3835:1;3831;3822:5;3816:3;:11;;;;:::i;:::-;3815:17;;;;:::i;:::-;:21;;;;:::i;:::-;:29;;;;:::i;:::-;3806:38;;3870:47;3900:8;3910:6;3870:29;:47::i;:::-;3862:55;;3947:10;3939:5;:18;3935:1052;;;4028:17;4048:121;4103:8;4146:1;4137:6;:10;;;;:::i;:::-;4048:29;:121::i;:::-;4028:141;;4208:10;4195:9;:23;4191:281;;4297:4;4303:6;4289:21;;;;;;;;;;;;4191:281;4448:1;4439:6;:10;;;;:::i;:::-;4431:18;;3935:1052;;;;4518:17;4538:121;4593:8;4636:1;4627:6;:10;;;;:::i;:::-;4538:29;:121::i;:::-;4518:141;;4697:10;4685:9;:22;4681:288;;;4791:4;4806:1;4797:6;:10;;;;:::i;:::-;4783:25;;;;;;;;;;;;4681:288;4945:1;4936:6;:10;;;;:::i;:::-;4930:16;;3935:1052;;3775:1350;;;3233:1902;;;;;5152:5;5159:1;5144:17;;;;;3013:2155;;;;;;:::o;6929:947::-;7033:4;7053:19;7158:42;7140:61;;:6;;;;;;;;;;:61;;;:138;;;;7235:42;7217:61;;:6;;;;;;;;;;:61;;;7140:138;7123:559;;;7303:18;7349:42;7303:102;;7458:10;:20;;;7500:66;7458:126;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7419:179;;7123:559;;;;7651:6;;;;;;;;;;:17;;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7629:42;;7123:559;7868:1;7710:11;:42;;;7801:8;7811:10;7784:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7774:49;;;;;;7710:131;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:155;:159;7691:178;;;6929:947;;;;:::o;5390:484::-;5488:7;5587:42;5569:61;;:6;;;;;;;;;;:61;;;:138;;;;5664:42;5646:61;;:6;;;;;;;;;;:61;;;5569:138;5552:316;;;5739:6;;;;;;;;;;:28;;;5768:8;5739:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5732:45;;;;5552:316;5815:6;;;;;;;;;;:32;;;5848:8;5815:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5808:49;;5390:484;;;;:::o;1919:657::-;2038:16;2068:19;2101:27;2154:11;2167:14;2185:77;2220:8;2242:10;2185:21;:77::i;:::-;2153:109;;;;2277:6;2272:41;;2293:5;2300:9;;;;;;;;;;;;2311:1;2285:28;;;;;;;;;;2272:41;2323:13;2339:47;2369:8;2379:6;2339:29;:47::i;:::-;2323:63;;2405:29;2418:8;2428:5;2405:12;:29::i;:::-;2396:38;;2479:9;;;;;;;;;;;;2469:20;;;;;;2458:6;2448:17;;;;;;:41;2444:87;;2511:4;2517:6;2525:5;2503:28;;;;;;;;;;;2444:87;2549:5;2556:9;;;;;;;;;;;;2567:1;2541:28;;;;;;;;;1919:657;;;;;;:::o;891:619::-;992:16;1022:19;1055:27;1107:14;1124:35;1150:8;1124:25;:35::i;:::-;1107:52;;1184:1;1174:6;:11;1170:70;;;1209:5;1216:9;;;;;;;;;;;;1227:1;1201:28;;;;;;;;;1170:70;1249:13;1265:51;1295:8;1314:1;1305:6;:10;;;;:::i;:::-;1265:29;:51::i;:::-;1249:67;;1335:29;1348:8;1358:5;1335:12;:29::i;:::-;1326:38;;1409:9;;;;;;;;;;;;1399:20;;;;;;1388:6;1378:17;;;;;;:41;1374:87;;1441:4;1447:6;1455:5;1433:28;;;;;;;;;;1374:87;1479:5;1486:9;;;;;;;;;;;;1497:5;1471:32;;;;;;;;891:619;;;;;;:::o;8113:505::-;8218:12;8322:42;8304:61;;:6;;;;;;;;;;:61;;;:138;;;;8399:42;8381:61;;:6;;;;;;;;;;:61;;;8304:138;8287:325;;;8474:6;;;;;;;;;;:26;;;8501:8;8511:10;8474:48;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8467:55;;;;8287:325;8560:6;;;;;;;;;;:19;;;8580:8;8590:10;8560:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8553:48;;8113:505;;;;;:::o;6108:528::-;6226:7;6325:42;6307:61;;:6;;;;;;;;;;:61;;;:138;;;;6402:42;6384:61;;:6;;;;;;;;;;:61;;;6307:138;6290:340;;;6477:6;;;;;;;;;;:32;;;6510:8;6520:6;6477:50;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6470:57;;;;6290:340;6565:6;;;;;;;;;;:36;;;6602:8;6612:6;6565:54;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6558:61;;6108:528;;;;;:::o;24:645:4:-;;156:81;172:64;229:6;172:64;:::i;:::-;156:81;:::i;:::-;147:90;;257:5;285:6;278:5;271:21;311:4;304:5;300:16;293:23;;336:6;386:3;378:4;370:6;366:17;361:3;357:27;354:36;351:2;;;403:1;400;393:12;351:2;431:1;416:247;441:6;438:1;435:13;416:247;;;508:3;536:48;580:3;568:10;536:48;:::i;:::-;531:3;524:61;614:4;609:3;605:14;598:21;;648:4;643:3;639:14;632:21;;476:187;463:1;460;456:9;451:14;;416:247;;;420:14;137:532;;;;;;;:::o;675:352::-;;788:65;804:48;845:6;804:48;:::i;:::-;788:65;:::i;:::-;779:74;;876:6;869:5;862:21;914:4;907:5;903:16;952:3;943:6;938:3;934:16;931:25;928:2;;;969:1;966;959:12;928:2;982:39;1014:6;1009:3;1004;982:39;:::i;:::-;769:258;;;;;;:::o;1033:143::-;;1121:6;1115:13;1106:22;;1137:33;1164:5;1137:33;:::i;:::-;1096:80;;;;:::o;1199:318::-;;1330:3;1323:4;1315:6;1311:17;1307:27;1297:2;;1348:1;1345;1338:12;1297:2;1381:6;1375:13;1406:105;1507:3;1499:6;1492:4;1484:6;1480:17;1406:105;:::i;:::-;1397:114;;1287:230;;;;;:::o;1523:139::-;;1607:6;1594:20;1585:29;;1623:33;1650:5;1623:33;:::i;:::-;1575:87;;;;:::o;1681:286::-;;1796:3;1789:4;1781:6;1777:17;1773:27;1763:2;;1814:1;1811;1804:12;1763:2;1847:6;1841:13;1872:89;1957:3;1949:6;1942:4;1934:6;1930:17;1872:89;:::i;:::-;1863:98;;1753:214;;;;;:::o;1973:139::-;;2057:6;2044:20;2035:29;;2073:33;2100:5;2073:33;:::i;:::-;2025:87;;;;:::o;2118:143::-;;2206:6;2200:13;2191:22;;2222:33;2249:5;2222:33;:::i;:::-;2181:80;;;;:::o;2267:284::-;;2386:2;2374:9;2365:7;2361:23;2357:32;2354:2;;;2402:1;2399;2392:12;2354:2;2445:1;2470:64;2526:7;2517:6;2506:9;2502:22;2470:64;:::i;:::-;2460:74;;2416:128;2344:207;;;;:::o;2557:420::-;;2701:2;2689:9;2680:7;2676:23;2672:32;2669:2;;;2717:1;2714;2707:12;2669:2;2781:1;2770:9;2766:17;2760:24;2811:18;2803:6;2800:30;2797:2;;;2843:1;2840;2833:12;2797:2;2871:89;2952:7;2943:6;2932:9;2928:22;2871:89;:::i;:::-;2861:99;;2731:239;2659:318;;;;:::o;2983:262::-;;3091:2;3079:9;3070:7;3066:23;3062:32;3059:2;;;3107:1;3104;3097:12;3059:2;3150:1;3175:53;3220:7;3211:6;3200:9;3196:22;3175:53;:::i;:::-;3165:63;;3121:117;3049:196;;;;:::o;3251:407::-;;;3376:2;3364:9;3355:7;3351:23;3347:32;3344:2;;;3392:1;3389;3382:12;3344:2;3435:1;3460:53;3505:7;3496:6;3485:9;3481:22;3460:53;:::i;:::-;3450:63;;3406:117;3562:2;3588:53;3633:7;3624:6;3613:9;3609:22;3588:53;:::i;:::-;3578:63;;3533:118;3334:324;;;;;:::o;3664:388::-;;3792:2;3780:9;3771:7;3767:23;3763:32;3760:2;;;3808:1;3805;3798:12;3760:2;3872:1;3861:9;3857:17;3851:24;3902:18;3894:6;3891:30;3888:2;;;3934:1;3931;3924:12;3888:2;3962:73;4027:7;4018:6;4007:9;4003:22;3962:73;:::i;:::-;3952:83;;3822:223;3750:302;;;;:::o;4058:284::-;;4177:2;4165:9;4156:7;4152:23;4148:32;4145:2;;;4193:1;4190;4183:12;4145:2;4236:1;4261:64;4317:7;4308:6;4297:9;4293:22;4261:64;:::i;:::-;4251:74;;4207:128;4135:207;;;;:::o;4348:109::-;4429:21;4444:5;4429:21;:::i;:::-;4424:3;4417:34;4407:50;;:::o;4463:118::-;4550:24;4568:5;4550:24;:::i;:::-;4545:3;4538:37;4528:53;;:::o;4587:157::-;4692:45;4712:24;4730:5;4712:24;:::i;:::-;4692:45;:::i;:::-;4687:3;4680:58;4670:74;;:::o;4750:360::-;;4864:38;4896:5;4864:38;:::i;:::-;4918:70;4981:6;4976:3;4918:70;:::i;:::-;4911:77;;4997:52;5042:6;5037:3;5030:4;5023:5;5019:16;4997:52;:::i;:::-;5074:29;5096:6;5074:29;:::i;:::-;5069:3;5065:39;5058:46;;4840:270;;;;;:::o;5116:163::-;5219:53;5266:5;5219:53;:::i;:::-;5214:3;5207:66;5197:82;;:::o;5285:301::-;5457:122;5573:5;5457:122;:::i;:::-;5452:3;5445:135;5435:151;;:::o;5592:118::-;5679:24;5697:5;5679:24;:::i;:::-;5674:3;5667:37;5657:53;;:::o;5716:157::-;5821:45;5841:24;5859:5;5841:24;:::i;:::-;5821:45;:::i;:::-;5816:3;5809:58;5799:74;;:::o;5879:397::-;;6034:75;6105:3;6096:6;6034:75;:::i;:::-;6134:2;6129:3;6125:12;6118:19;;6147:75;6218:3;6209:6;6147:75;:::i;:::-;6247:2;6242:3;6238:12;6231:19;;6267:3;6260:10;;6023:253;;;;;:::o;6282:210::-;;6407:2;6396:9;6392:18;6384:26;;6420:65;6482:1;6471:9;6467:17;6458:6;6420:65;:::i;:::-;6374:118;;;;:::o;6498:517::-;;6697:2;6686:9;6682:18;6674:26;;6710:65;6772:1;6761:9;6757:17;6748:6;6710:65;:::i;:::-;6822:9;6816:4;6812:20;6807:2;6796:9;6792:18;6785:48;6850:76;6921:4;6912:6;6850:76;:::i;:::-;6842:84;;6936:72;7004:2;6993:9;6989:18;6980:6;6936:72;:::i;:::-;6664:351;;;;;;:::o;7021:320::-;;7174:2;7163:9;7159:18;7151:26;;7187:65;7249:1;7238:9;7234:17;7225:6;7187:65;:::i;:::-;7262:72;7330:2;7319:9;7315:18;7306:6;7262:72;:::i;:::-;7141:200;;;;;:::o;7347:222::-;;7478:2;7467:9;7463:18;7455:26;;7491:71;7559:1;7548:9;7544:17;7535:6;7491:71;:::i;:::-;7445:124;;;;:::o;7575:332::-;;7734:2;7723:9;7719:18;7711:26;;7747:71;7815:1;7804:9;7800:17;7791:6;7747:71;:::i;:::-;7828:72;7896:2;7885:9;7881:18;7872:6;7828:72;:::i;:::-;7701:206;;;;;:::o;7913:309::-;;8062:2;8051:9;8047:18;8039:26;;8111:9;8105:4;8101:20;8097:1;8086:9;8082:17;8075:47;8139:76;8210:4;8201:6;8139:76;:::i;:::-;8131:84;;8029:193;;;;:::o;8228:254::-;;8375:2;8364:9;8360:18;8352:26;;8388:87;8472:1;8461:9;8457:17;8448:6;8388:87;:::i;:::-;8342:140;;;;:::o;8488:392::-;;8704:2;8693:9;8689:18;8681:26;;8717:156;8870:1;8859:9;8855:17;8846:6;8717:156;:::i;:::-;8671:209;;;;:::o;8886:222::-;;9017:2;9006:9;9002:18;8994:26;;9030:71;9098:1;9087:9;9083:17;9074:6;9030:71;:::i;:::-;8984:124;;;;:::o;9114:129::-;;9175:20;;:::i;:::-;9165:30;;9204:33;9232:4;9224:6;9204:33;:::i;:::-;9155:88;;;:::o;9249:75::-;;9315:2;9309:9;9299:19;;9289:35;:::o;9330:311::-;;9497:18;9489:6;9486:30;9483:2;;;9519:18;;:::i;:::-;9483:2;9569:4;9561:6;9557:17;9549:25;;9629:4;9623;9619:15;9611:23;;9412:229;;;:::o;9647:307::-;;9798:18;9790:6;9787:30;9784:2;;;9820:18;;:::i;:::-;9784:2;9858:29;9880:6;9858:29;:::i;:::-;9850:37;;9942:4;9936;9932:15;9924:23;;9713:241;;;:::o;9960:98::-;;10045:5;10039:12;10029:22;;10018:40;;;:::o;10064:168::-;;10181:6;10176:3;10169:19;10221:4;10216:3;10212:14;10197:29;;10159:73;;;;:::o;10238:305::-;;10297:20;10315:1;10297:20;:::i;:::-;10292:25;;10331:20;10349:1;10331:20;:::i;:::-;10326:25;;10485:1;10417:66;10413:74;10410:1;10407:81;10404:2;;;10491:18;;:::i;:::-;10404:2;10535:1;10532;10528:9;10521:16;;10282:261;;;;:::o;10549:185::-;;10606:20;10624:1;10606:20;:::i;:::-;10601:25;;10640:20;10658:1;10640:20;:::i;:::-;10635:25;;10679:1;10669:2;;10684:18;;:::i;:::-;10669:2;10726:1;10723;10719:9;10714:14;;10591:143;;;;:::o;10740:191::-;;10800:20;10818:1;10800:20;:::i;:::-;10795:25;;10834:20;10852:1;10834:20;:::i;:::-;10829:25;;10873:1;10870;10867:8;10864:2;;;10878:18;;:::i;:::-;10864:2;10923:1;10920;10916:9;10908:17;;10785:146;;;;:::o;10937:96::-;;11003:24;11021:5;11003:24;:::i;:::-;10992:35;;10982:51;;;:::o;11039:90::-;;11116:5;11109:13;11102:21;11091:32;;11081:48;;;:::o;11135:77::-;;11201:5;11190:16;;11180:32;;;:::o;11218:162::-;;11369:5;11358:16;;11348:32;;;:::o;11386:126::-;;11463:42;11456:5;11452:54;11441:65;;11431:81;;;:::o;11518:77::-;;11584:5;11573:16;;11563:32;;;:::o;11601:158::-;;11700:53;11747:5;11700:53;:::i;:::-;11687:66;;11677:82;;;:::o;11765:129::-;;11864:24;11882:5;11864:24;:::i;:::-;11851:37;;11841:53;;;:::o;11900:297::-;;12068:123;12081:109;12184:5;12081:109;:::i;:::-;12068:123;:::i;:::-;12055:136;;12045:152;;;:::o;12203:307::-;12271:1;12281:113;12295:6;12292:1;12289:13;12281:113;;;12380:1;12375:3;12371:11;12365:18;12361:1;12356:3;12352:11;12345:39;12317:2;12314:1;12310:10;12305:15;;12281:113;;;12412:6;12409:1;12406:13;12403:2;;;12492:1;12483:6;12478:3;12474:16;12467:27;12403:2;12252:258;;;;:::o;12516:281::-;12599:27;12621:4;12599:27;:::i;:::-;12591:6;12587:40;12729:6;12717:10;12714:22;12693:18;12681:10;12678:34;12675:62;12672:2;;;12740:18;;:::i;:::-;12672:2;12780:10;12776:2;12769:22;12559:238;;;:::o;12803:79::-;;12871:5;12860:16;;12850:32;;;:::o;12888:79::-;;12956:5;12945:16;;12935:32;;;:::o;12973:180::-;13021:77;13018:1;13011:88;13118:4;13115:1;13108:15;13142:4;13139:1;13132:15;13159:180;13207:77;13204:1;13197:88;13304:4;13301:1;13294:15;13328:4;13325:1;13318:15;13345:180;13393:77;13390:1;13383:88;13490:4;13487:1;13480:15;13514:4;13511:1;13504:15;13531:102;;13623:2;13619:7;13614:2;13607:5;13603:14;13599:28;13589:38;;13579:54;;;:::o;13639:92::-;;13718:5;13715:1;13711:13;13690:34;;13680:51;;;:::o;13737:122::-;13810:24;13828:5;13810:24;:::i;:::-;13803:5;13800:35;13790:2;;13849:1;13846;13839:12;13790:2;13780:79;:::o;13865:122::-;13938:24;13956:5;13938:24;:::i;:::-;13931:5;13928:35;13918:2;;13977:1;13974;13967:12;13918:2;13908:79;:::o;13993:122::-;14066:24;14084:5;14066:24;:::i;:::-;14059:5;14056:35;14046:2;;14105:1;14102;14095:12;14046:2;14036:79;:::o" - }, - "methodIdentifiers": { - "getCurrentValue(bytes32)": "adf1639d", - "getDataBefore(bytes32,uint256)": "a792765f", - "getIndexForDataBefore(bytes32,uint256)": "29449085", - "getNewValueCountbyQueryId(bytes32)": "77b03e0d", - "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", - "isInDispute(bytes32,uint256)": "44e87f91", - "retrieveData(bytes32,uint256)": "c5958af9", - "tellor()": "1959ad5b" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_tellor\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentValue\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getIndexForDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_found\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"isInDispute\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tellor\",\"outputs\":[{\"internalType\":\"contract ITellor\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"the constructor sets the tellor address in storage\",\"params\":{\"_tellor\":\"is the TellorMaster address\"}},\"getCurrentValue(bytes32)\":{\"details\":\"Allows the user to get the latest value for the queryId specified\",\"params\":{\"_queryId\":\"is the id to look up the value for\"},\"returns\":{\"_ifRetrieve\":\"bool true if non-zero value successfully retrieved\",\"_timestampRetrieved\":\"the retrieved value's timestamp\",\"_value\":\"the value retrieved\"}},\"getDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves the latest value for the queryId before the specified timestamp\",\"params\":{\"_queryId\":\"is the queryId to look up the value for\",\"_timestamp\":\"before which to search for latest value\"},\"returns\":{\"_ifRetrieve\":\"bool true if able to retrieve a non-zero value\",\"_timestampRetrieved\":\"the value's timestamp\",\"_value\":\"the value retrieved\"}},\"getIndexForDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves latest array index of data before the specified timestamp for the queryId\",\"params\":{\"_queryId\":\"is the queryId to look up the index for\",\"_timestamp\":\"is the timestamp before which to search for the latest index\"},\"returns\":{\"_found\":\"whether the index was found\",\"_index\":\"the latest index found before the specified timestamp\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for the queryId\",\"params\":{\"_queryId\":\"the id to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"isInDispute(bytes32,uint256)\":{\"details\":\"Determines whether a value with a given queryId and timestamp has been disputed\",\"params\":{\"_queryId\":\"is the value id to look up\",\"_timestamp\":\"is the timestamp of the value to look up\"},\"returns\":{\"_0\":\"bool true if queryId/timestamp is under dispute\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieve value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for query/timestamp submitted\"}}},\"title\":\"UserContract This contract allows for easy integration with the Tellor System by helping smart contracts to read data from Tellor\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/UsingTellor.sol\":\"UsingTellor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/UsingTellor.sol\":{\"keccak256\":\"0x92f27d93725f4bbda8434d00f4eaceacf9b590e6a668607cf832d2490d095b9c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c229768f6909ab94b7b3a2dfa1980977d89513b84b02ac170851913459b4808f\",\"dweb:/ipfs/QmdHnNLQbDJML5ENDMybf7UNSkgpiKegWkoDP47syz2xdj\"]},\"contracts/interface/ITellor.sol\":{\"keccak256\":\"0xa8b54594c55c9cff8db4628431e4817a16303cbcecb592401a8ed905529830bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2af86da21cfadcdc339e0113757e243ffc0d110bc14d628e7302781f255c28ea\",\"dweb:/ipfs/QmYUUpAxCqANyfKbeD5brbFfN5psEdvoFwsw7M4Gv7paY4\"]}},\"version\":1}" - } - }, - "contracts/interface/ITellor.sol": { - "ITellor": { - "abi": [ - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "addresses", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - }, - { - "internalType": "address", - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "allowedToTrade", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_from", - "type": "address" - }, - { - "internalType": "address", - "name": "_to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "approveAndTransferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_blockNumber", - "type": "uint256" - } - ], - "name": "balanceOfAt", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "beginDispute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "burn", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "burnTips", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_id", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "buyTreasury", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_id", - "type": "bytes32" - }, - { - "internalType": "address", - "name": "_addy", - "type": "address" - } - ], - "name": "changeAddressVar", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newController", - "type": "address" - } - ], - "name": "changeControllerContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newDeity", - "type": "address" - } - ], - "name": "changeDeity", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newGovernance", - "type": "address" - } - ], - "name": "changeGovernanceContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newOracle", - "type": "address" - } - ], - "name": "changeOracleContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newOwner", - "type": "address" - } - ], - "name": "changeOwner", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_newReportingLock", - "type": "uint256" - } - ], - "name": "changeReportingLock", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_reporter", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_status", - "type": "uint256" - } - ], - "name": "changeStakingStatus", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_tContract", - "type": "address" - } - ], - "name": "changeTellorContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_newTimeBasedReward", - "type": "uint256" - } - ], - "name": "changeTimeBasedReward", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_newTreasury", - "type": "address" - } - ], - "name": "changeTreasuryContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_target", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "changeUint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_delegate", - "type": "address" - } - ], - "name": "delegate", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_blockNumber", - "type": "uint256" - } - ], - "name": "delegateOfAt", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "depositStake", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_voter", - "type": "address" - } - ], - "name": "didVote", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - } - ], - "name": "executeVote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_data", - "type": "bytes32" - } - ], - "name": "getAddressVars", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - } - ], - "name": "getAllDisputeVars", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "uint256[9]", - "name": "", - "type": "uint256[9]" - }, - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getBlockNumberByTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentReward", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentValue", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_holder", - "type": "address" - } - ], - "name": "getDelegateInfo", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_hash", - "type": "bytes32" - } - ], - "name": "getDisputeIdByDisputeHash", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - } - ], - "name": "getDisputeInfo", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "_data", - "type": "bytes32" - } - ], - "name": "getDisputeUintVars", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_requestId", - "type": "uint256" - } - ], - "name": "getLastNewValueById", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getNewCurrentVariables", - "outputs": [ - { - "internalType": "bytes32", - "name": "_c", - "type": "bytes32" - }, - { - "internalType": "uint256[5]", - "name": "_r", - "type": "uint256[5]" - }, - { - "internalType": "uint256", - "name": "_d", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_t", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getNewValueCountbyQueryId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_requestId", - "type": "uint256" - } - ], - "name": "getNewValueCountbyRequestId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getOpenDisputesOnId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "name": "getReportTimestampByIndex", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getReporterByTimestamp", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_reporter", - "type": "address" - } - ], - "name": "getReporterLastTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getReportingLock", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_reporter", - "type": "address" - } - ], - "name": "getReportsSubmittedByAddress", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_staker", - "type": "address" - } - ], - "name": "getStakerInfo", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getTimeBasedReward", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getTimeOfLastNewValue", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getTimestampCountById", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getTimestampIndexByTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "name": "getTimestampbyQueryIdandIndex", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_requestId", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "name": "getTimestampbyRequestIDandIndex", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getTipsById", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "name": "getTipsByUser", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_id", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_investor", - "type": "address" - } - ], - "name": "getTreasuryAccount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getTreasuryCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_id", - "type": "uint256" - } - ], - "name": "getTreasuryDetails", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "name": "getTreasuryFundsByUser", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_id", - "type": "uint256" - } - ], - "name": "getTreasuryOwners", - "outputs": [ - { - "internalType": "address[]", - "name": "", - "type": "address[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_data", - "type": "bytes32" - } - ], - "name": "getUintVar", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getValueByTimestamp", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getVoteCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - } - ], - "name": "getVoteInfo", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256[9]", - "name": "", - "type": "uint256[9]" - }, - { - "internalType": "bool[2]", - "name": "", - "type": "bool[2]" - }, - { - "internalType": "enum ITellor.VoteResult", - "name": "", - "type": "uint8" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - }, - { - "internalType": "address[2]", - "name": "", - "type": "address[2]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_hash", - "type": "bytes32" - } - ], - "name": "getVoteRounds", - "outputs": [ - { - "internalType": "uint256[]", - "name": "", - "type": "uint256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "governance", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "init", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - } - ], - "name": "isApprovedGovernanceContract", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "_func", - "type": "bytes4" - } - ], - "name": "isFunctionApproved", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_addy", - "type": "address" - } - ], - "name": "isMigrated", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_maxAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_rate", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_duration", - "type": "uint256" - } - ], - "name": "issueTreasury", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "killContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "migrate", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_destination", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "migrateFor", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_reciever", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "mint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_investor", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_id", - "type": "uint256" - } - ], - "name": "payTreasury", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "_function", - "type": "bytes4" - }, - { - "internalType": "bytes", - "name": "_data", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "proposeVote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "removeValue", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "reportingLock", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "requestStakingWithdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_tokenHolder", - "type": "address" - } - ], - "name": "rescue51PercentAttack", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "rescueBrokenDataReporting", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "rescueFailedUpdate", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_requestId", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "retrieveData", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "retrieveData", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "_func", - "type": "bytes4" - }, - { - "internalType": "bool", - "name": "_val", - "type": "bool" - } - ], - "name": "setApprovedFunction", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_reporter", - "type": "address" - }, - { - "internalType": "address", - "name": "_disputer", - "type": "address" - } - ], - "name": "slashReporter", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_nonce", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_queryData", - "type": "bytes" - } - ], - "name": "submitValue", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - } - ], - "name": "tallyVotes", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_tip", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_queryData", - "type": "bytes" - } - ], - "name": "tipQuery", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_from", - "type": "address" - }, - { - "internalType": "address", - "name": "_to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "uints", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "updateMinDisputeFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "verify", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "_supports", - "type": "bool" - }, - { - "internalType": "bool", - "name": "_invalidQuery", - "type": "bool" - } - ], - "name": "vote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "_addys", - "type": "address[]" - }, - { - "internalType": "uint256", - "name": "_disputeId", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "_supports", - "type": "bool" - }, - { - "internalType": "bool", - "name": "_invalidQuery", - "type": "bool" - } - ], - "name": "voteFor", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_id", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_investor", - "type": "address" - } - ], - "name": "wasPaid", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawStake", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "addresses(bytes32)": "699f200f", - "allowance(address,address)": "dd62ed3e", - "allowedToTrade(address,uint256)": "999cf26c", - "approve(address,uint256)": "095ea7b3", - "approveAndTransferFrom(address,address,uint256)": "288c9c9d", - "balanceOf(address)": "70a08231", - "balanceOfAt(address,uint256)": "4ee2cd7e", - "beginDispute(bytes32,uint256)": "1f379acc", - "burn(uint256)": "42966c68", - "burnTips()": "df0a6eb7", - "buyTreasury(uint256,uint256)": "6a64b815", - "changeAddressVar(bytes32,address)": "515ec907", - "changeControllerContract(address)": "3c46a185", - "changeDeity(address)": "47abd7f1", - "changeGovernanceContract(address)": "e8ce51d7", - "changeOracleContract(address)": "1cbd3151", - "changeOwner(address)": "a6f9dae1", - "changeReportingLock(uint256)": "5d183cfa", - "changeStakingStatus(address,uint256)": "a1332c5c", - "changeTellorContract(address)": "ae0a8279", - "changeTimeBasedReward(uint256)": "6d53585f", - "changeTreasuryContract(address)": "bd87e0c9", - "changeUint(bytes32,uint256)": "740358e6", - "decimals()": "313ce567", - "delegate(address)": "5c19a95c", - "delegateOfAt(address,uint256)": "b3427a2b", - "depositStake()": "0d2d76a2", - "didVote(uint256,address)": "a7c438bc", - "executeVote(uint256)": "f98a4eca", - "getAddressVars(bytes32)": "133bee5e", - "getAllDisputeVars(uint256)": "af0b1327", - "getBlockNumberByTimestamp(bytes32,uint256)": "935408d0", - "getCurrentReward(bytes32)": "a1e588a5", - "getCurrentValue(bytes32)": "adf1639d", - "getDelegateInfo(address)": "10c67e1c", - "getDisputeIdByDisputeHash(bytes32)": "da379941", - "getDisputeInfo(uint256)": "6169c308", - "getDisputeUintVars(uint256,bytes32)": "7f6fd5d9", - "getLastNewValueById(uint256)": "3180f8df", - "getNewCurrentVariables()": "4049f198", - "getNewValueCountbyQueryId(bytes32)": "77b03e0d", - "getNewValueCountbyRequestId(uint256)": "46eee1c4", - "getOpenDisputesOnId(bytes32)": "0e1596ef", - "getReportTimestampByIndex(bytes32,uint256)": "7c37b8b4", - "getReporterByTimestamp(bytes32,uint256)": "e07c5486", - "getReporterLastTimestamp(address)": "50005b83", - "getReportingLock()": "460c33a2", - "getReportsSubmittedByAddress(address)": "3878293e", - "getStakerInfo(address)": "733bdef0", - "getTimeBasedReward()": "14d66b9a", - "getTimeOfLastNewValue()": "c0f95d52", - "getTimestampCountById(bytes32)": "35e72432", - "getTimestampIndexByTimestamp(bytes32,uint256)": "9d9b16ed", - "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", - "getTimestampbyRequestIDandIndex(uint256,uint256)": "77fbb663", - "getTipsById(bytes32)": "ef4c262d", - "getTipsByUser(address)": "b736ec36", - "getTreasuryAccount(uint256,address)": "ae23fae1", - "getTreasuryCount()": "8e0918b5", - "getTreasuryDetails(uint256)": "73342a47", - "getTreasuryFundsByUser(address)": "770d458f", - "getTreasuryOwners(uint256)": "1683ca53", - "getUintVar(bytes32)": "612c8f7f", - "getValueByTimestamp(bytes32,uint256)": "0b2d2b0d", - "getVoteCount()": "e7b3387c", - "getVoteInfo(uint256)": "8d824273", - "getVoteRounds(bytes32)": "248638e5", - "governance()": "5aa6e675", - "init()": "e1c7392a", - "isApprovedGovernanceContract(address)": "fd3171b2", - "isFunctionApproved(bytes4)": "2d2506a9", - "isMigrated(address)": "58421ed2", - "issueTreasury(uint256,uint256,uint256)": "6274885f", - "killContract()": "1c02708d", - "migrate()": "8fd3ab80", - "migrateFor(address,uint256)": "0b477573", - "mint(address,uint256)": "40c10f19", - "name()": "06fdde03", - "payTreasury(address,uint256)": "ef362980", - "proposeVote(address,bytes4,bytes,uint256)": "0b5e95c3", - "removeValue(bytes32,uint256)": "5b5edcfc", - "reportingLock()": "3321fc41", - "requestStakingWithdraw()": "28449c3a", - "rescue51PercentAttack(address)": "335f8dd4", - "rescueBrokenDataReporting()": "7c564a6a", - "rescueFailedUpdate()": "32701403", - "retrieveData(bytes32,uint256)": "c5958af9", - "retrieveData(uint256,uint256)": "93fa4915", - "setApprovedFunction(bytes4,bool)": "e48d4b3b", - "slashReporter(address,address)": "4dfc2a34", - "submitValue(bytes32,bytes,uint256,bytes)": "5eaa9ced", - "symbol()": "95d89b41", - "tallyVotes(uint256)": "4d318b0e", - "tipQuery(bytes32,uint256,bytes)": "ef0234ad", - "totalSupply()": "18160ddd", - "transfer(address,uint256)": "a9059cbb", - "transferFrom(address,address,uint256)": "23b872dd", - "uints(bytes32)": "b59e14d4", - "updateMinDisputeFee()": "90e5b235", - "verify()": "fc735e99", - "vote(uint256,bool,bool)": "df133bca", - "voteFor(address[],uint256,bool,bool)": "e5d91314", - "wasPaid(uint256,address)": "4d90d705", - "withdrawStake()": "bed9d861" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"addresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"allowedToTrade\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approveAndTransferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"balanceOfAt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"beginDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"burnTips\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"buyTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_id\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_addy\",\"type\":\"address\"}],\"name\":\"changeAddressVar\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newController\",\"type\":\"address\"}],\"name\":\"changeControllerContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newDeity\",\"type\":\"address\"}],\"name\":\"changeDeity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newGovernance\",\"type\":\"address\"}],\"name\":\"changeGovernanceContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOracle\",\"type\":\"address\"}],\"name\":\"changeOracleContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"changeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newReportingLock\",\"type\":\"uint256\"}],\"name\":\"changeReportingLock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_status\",\"type\":\"uint256\"}],\"name\":\"changeStakingStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_tContract\",\"type\":\"address\"}],\"name\":\"changeTellorContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newTimeBasedReward\",\"type\":\"uint256\"}],\"name\":\"changeTimeBasedReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newTreasury\",\"type\":\"address\"}],\"name\":\"changeTreasuryContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"changeUint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_delegate\",\"type\":\"address\"}],\"name\":\"delegate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"delegateOfAt\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"depositStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"didVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"executeVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_data\",\"type\":\"bytes32\"}],\"name\":\"getAddressVars\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"getAllDisputeVars\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256[9]\",\"name\":\"\",\"type\":\"uint256[9]\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getBlockNumberByTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentValue\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_holder\",\"type\":\"address\"}],\"name\":\"getDelegateInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getDisputeIdByDisputeHash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"getDisputeInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_data\",\"type\":\"bytes32\"}],\"name\":\"getDisputeUintVars\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"}],\"name\":\"getLastNewValueById\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNewCurrentVariables\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_c\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[5]\",\"name\":\"_r\",\"type\":\"uint256[5]\"},{\"internalType\":\"uint256\",\"name\":\"_d\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_t\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"}],\"name\":\"getNewValueCountbyRequestId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getOpenDisputesOnId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getReportTimestampByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getReporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"getReporterLastTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getReportingLock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"getReportsSubmittedByAddress\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTimeBasedReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTimeOfLastNewValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getTimestampCountById\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getTimestampIndexByTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyRequestIDandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getTipsById\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getTipsByUser\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"}],\"name\":\"getTreasuryAccount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTreasuryCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"getTreasuryDetails\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getTreasuryFundsByUser\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"getTreasuryOwners\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_data\",\"type\":\"bytes32\"}],\"name\":\"getUintVar\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getValueByTimestamp\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getVoteCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"getVoteInfo\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[9]\",\"name\":\"\",\"type\":\"uint256[9]\"},{\"internalType\":\"bool[2]\",\"name\":\"\",\"type\":\"bool[2]\"},{\"internalType\":\"enum ITellor.VoteResult\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"},{\"internalType\":\"address[2]\",\"name\":\"\",\"type\":\"address[2]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getVoteRounds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"name\":\"isApprovedGovernanceContract\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_func\",\"type\":\"bytes4\"}],\"name\":\"isFunctionApproved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_addy\",\"type\":\"address\"}],\"name\":\"isMigrated\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_rate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_duration\",\"type\":\"uint256\"}],\"name\":\"issueTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"killContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"migrate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_destination\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"migrateFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reciever\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"payTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"_function\",\"type\":\"bytes4\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"proposeVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"removeValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"reportingLock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"requestStakingWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_tokenHolder\",\"type\":\"address\"}],\"name\":\"rescue51PercentAttack\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rescueBrokenDataReporting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rescueFailedUpdate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_func\",\"type\":\"bytes4\"},{\"internalType\":\"bool\",\"name\":\"_val\",\"type\":\"bool\"}],\"name\":\"setApprovedFunction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_disputer\",\"type\":\"address\"}],\"name\":\"slashReporter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"submitValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"tallyVotes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_tip\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"tipQuery\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"uints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateMinDisputeFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verify\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_supports\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"_invalidQuery\",\"type\":\"bool\"}],\"name\":\"vote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_addys\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_supports\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"_invalidQuery\",\"type\":\"bool\"}],\"name\":\"voteFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"}],\"name\":\"wasPaid\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interface/ITellor.sol\":\"ITellor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interface/ITellor.sol\":{\"keccak256\":\"0xa8b54594c55c9cff8db4628431e4817a16303cbcecb592401a8ed905529830bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2af86da21cfadcdc339e0113757e243ffc0d110bc14d628e7302781f255c28ea\",\"dweb:/ipfs/QmYUUpAxCqANyfKbeD5brbFfN5psEdvoFwsw7M4Gv7paY4\"]}},\"version\":1}" - } - }, - "contracts/mocks/BenchUsingTellor.sol": { - "BenchUsingTellor": { - "abi": [ - { - "inputs": [ - { - "internalType": "address payable", - "name": "_tellor", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentValue", - "outputs": [ - { - "internalType": "bool", - "name": "_ifRetrieve", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_timestampRetrieved", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getDataBefore", - "outputs": [ - { - "internalType": "bool", - "name": "_ifRetrieve", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "_value", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_timestampRetrieved", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "getIndexForDataBefore", - "outputs": [ - { - "internalType": "bool", - "name": "_found", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getNewValueCountbyQueryId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_index", - "type": "uint256" - } - ], - "name": "getTimestampbyQueryIdandIndex", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "isInDispute", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_timestamp", - "type": "uint256" - } - ], - "name": "retrieveData", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "tellor", - "outputs": [ - { - "internalType": "contract ITellor", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "evm": { - "bytecode": { - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:861:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "78:88:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "88:22:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "103:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "97:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "97:13:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "88:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "154:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_address_payable", - "nodeType": "YulIdentifier", - "src": "119:34:4" - }, - "nodeType": "YulFunctionCall", - "src": "119:41:4" - }, - "nodeType": "YulExpressionStatement", - "src": "119:41:4" - } - ] - }, - "name": "abi_decode_t_address_payable_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "56:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "64:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "72:5:4", - "type": "" - } - ], - "src": "7:159:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "257:215:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "303:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "315:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "305:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "305:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "305:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "278:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "287:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "274:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "274:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "299:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "270:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "270:32:4" - }, - "nodeType": "YulIf", - "src": "267:2:4" - }, - { - "nodeType": "YulBlock", - "src": "329:136:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "344:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "358:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "348:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "373:82:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "427:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "438:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "423:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "423:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "447:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address_payable_fromMemory", - "nodeType": "YulIdentifier", - "src": "383:39:4" - }, - "nodeType": "YulFunctionCall", - "src": "383:72:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "373:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "227:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "238:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "250:6:4", - "type": "" - } - ], - "src": "172:300:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "531:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "541:35:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "570:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "552:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "552:24:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "541:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "513:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "523:7:4", - "type": "" - } - ], - "src": "478:104:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "633:81:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "643:65:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "658:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "665:42:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "654:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "654:54:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "643:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "615:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "625:7:4", - "type": "" - } - ], - "src": "588:126:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "771:87:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "836:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "845:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "848:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "838:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "838:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "838:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "794:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "827:5:4" - } - ], - "functionName": { - "name": "cleanup_t_address_payable", - "nodeType": "YulIdentifier", - "src": "801:25:4" - }, - "nodeType": "YulFunctionCall", - "src": "801:32:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "791:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "791:43:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "784:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "784:51:4" - }, - "nodeType": "YulIf", - "src": "781:2:4" - } - ] - }, - "name": "validator_revert_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "764:5:4", - "type": "" - } - ], - "src": "720:138:4" - } - ] - }, - "contents": "{\n\n function abi_decode_t_address_payable_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_payable_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n}\n", - "id": 4, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "60806040523480156200001157600080fd5b506040516200181438038062001814833981810160405281019062000037919062000097565b80806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000111565b6000815190506200009181620000f7565b92915050565b600060208284031215620000aa57600080fd5b6000620000ba8482850162000080565b91505092915050565b6000620000d082620000d7565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010281620000c3565b81146200010e57600080fd5b50565b6116f380620001216000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212206bf2c06e53d58ce1c2bd5cf790f33fababd39b4a86e36ac5ca9648b7f68968c964736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x1814 CODESIZE SUB DUP1 PUSH3 0x1814 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x37 SWAP2 SWAP1 PUSH3 0x97 JUMP JUMPDEST DUP1 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP PUSH3 0x111 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x91 DUP2 PUSH3 0xF7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xAA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH3 0xBA DUP5 DUP3 DUP6 ADD PUSH3 0x80 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xD0 DUP3 PUSH3 0xD7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0x102 DUP2 PUSH3 0xC3 JUMP JUMPDEST DUP2 EQ PUSH3 0x10E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16F3 DUP1 PUSH3 0x121 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH12 0xF2C06E53D58CE1C2BD5CF790 RETURN EXTCODEHASH 0xAB 0xAB 0xD3 SWAP12 0x4A DUP7 0xE3 PUSH11 0xC5CA9648B7F68968C96473 PUSH16 0x6C634300080300330000000000000000 ", - "sourceMap": "186:109:3:-:0;;;233:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;282:7;515::1;498:6;;:25;;;;;;;;;;;;;;;;;;451:79;233:60:3;186:109;;7:159:4;;103:6;97:13;88:22;;119:41;154:5;119:41;:::i;:::-;78:88;;;;:::o;172:300::-;;299:2;287:9;278:7;274:23;270:32;267:2;;;315:1;312;305:12;267:2;358:1;383:72;447:7;438:6;427:9;423:22;383:72;:::i;:::-;373:82;;329:136;257:215;;;;:::o;478:104::-;;552:24;570:5;552:24;:::i;:::-;541:35;;531:51;;;:::o;588:126::-;;665:42;658:5;654:54;643:65;;633:81;;;:::o;720:138::-;801:32;827:5;801:32;:::i;:::-;794:5;791:43;781:2;;848:1;845;838:12;781:2;771:87;:::o;186:109:3:-;;;;;;;" - }, - "deployedBytecode": { - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:14118:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "137:532:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "147:90:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "229:6:4" - } - ], - "functionName": { - "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulIdentifier", - "src": "172:56:4" - }, - "nodeType": "YulFunctionCall", - "src": "172:64:4" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "156:15:4" - }, - "nodeType": "YulFunctionCall", - "src": "156:81:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "147:5:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "246:16:4", - "value": { - "name": "array", - "nodeType": "YulIdentifier", - "src": "257:5:4" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "250:3:4", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "278:5:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "285:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "271:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "271:21:4" - }, - "nodeType": "YulExpressionStatement", - "src": "271:21:4" - }, - { - "nodeType": "YulAssignment", - "src": "293:23:4", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "304:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "311:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "300:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "300:16:4" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "293:3:4" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "325:17:4", - "value": { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "336:6:4" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "329:3:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "391:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "400:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "403:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "393:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "393:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "393:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "361:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "370:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "378:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "366:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "366:17:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "357:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "357:27:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "386:3:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "354:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "354:36:4" - }, - "nodeType": "YulIf", - "src": "351:2:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "476:187:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "490:21:4", - "value": { - "name": "src", - "nodeType": "YulIdentifier", - "src": "508:3:4" - }, - "variables": [ - { - "name": "elementPos", - "nodeType": "YulTypedName", - "src": "494:10:4", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "531:3:4" - }, - { - "arguments": [ - { - "name": "elementPos", - "nodeType": "YulIdentifier", - "src": "568:10:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "580:3:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256_fromMemory", - "nodeType": "YulIdentifier", - "src": "536:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "536:48:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "524:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "524:61:4" - }, - "nodeType": "YulExpressionStatement", - "src": "524:61:4" - }, - { - "nodeType": "YulAssignment", - "src": "598:21:4", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "609:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "614:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "605:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "605:14:4" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "598:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "632:21:4", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "643:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "648:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "639:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "639:14:4" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "632:3:4" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "438:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "441:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "435:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "435:13:4" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "449:18:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "451:14:4", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "460:1:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "463:1:4", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "456:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "456:9:4" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "451:1:4" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "420:14:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "422:10:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "431:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "426:1:4", - "type": "" - } - ] - } - ] - }, - "src": "416:247:4" - } - ] - }, - "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "107:6:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "115:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "123:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "131:5:4", - "type": "" - } - ], - "src": "24:645:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "769:258:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "779:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "845:6:4" - } - ], - "functionName": { - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "804:40:4" - }, - "nodeType": "YulFunctionCall", - "src": "804:48:4" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "788:15:4" - }, - "nodeType": "YulFunctionCall", - "src": "788:65:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "779:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "869:5:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "876:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "862:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "862:21:4" - }, - "nodeType": "YulExpressionStatement", - "src": "862:21:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "892:27:4", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "907:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "914:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "903:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "903:16:4" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "896:3:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "957:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "966:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "969:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "959:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "959:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "959:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "938:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "943:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "934:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "934:16:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "952:3:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "931:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "931:25:4" - }, - "nodeType": "YulIf", - "src": "928:2:4" - }, - { - "expression": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "1004:3:4" - }, - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "1009:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1014:6:4" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "982:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "982:39:4" - }, - "nodeType": "YulExpressionStatement", - "src": "982:39:4" - } - ] - }, - "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "742:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "747:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "755:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "763:5:4", - "type": "" - } - ], - "src": "675:352:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1096:80:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1106:22:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1121:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1115:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "1115:13:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1106:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1164:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_address", - "nodeType": "YulIdentifier", - "src": "1137:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "1137:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1137:33:4" - } - ] - }, - "name": "abi_decode_t_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1074:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1082:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1090:5:4", - "type": "" - } - ], - "src": "1033:143:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1287:230:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1336:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1345:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1348:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1338:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1338:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1338:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1315:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1323:4:4", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1311:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1311:17:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1330:3:4" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1307:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1307:27:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1300:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1300:35:4" - }, - "nodeType": "YulIf", - "src": "1297:2:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1361:27:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1381:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1375:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "1375:13:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1365:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1397:114:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1484:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1492:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1480:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1480:17:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1499:6:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1507:3:4" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "1406:73:4" - }, - "nodeType": "YulFunctionCall", - "src": "1406:105:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1397:5:4" - } - ] - } - ] - }, - "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1265:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1273:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1281:5:4", - "type": "" - } - ], - "src": "1199:318:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1575:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1585:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1607:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1594:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "1594:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1585:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1650:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_bytes32", - "nodeType": "YulIdentifier", - "src": "1623:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "1623:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1623:33:4" - } - ] - }, - "name": "abi_decode_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1553:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1561:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1569:5:4", - "type": "" - } - ], - "src": "1523:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1753:214:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1802:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1811:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1814:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1804:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1804:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "1804:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1781:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1789:4:4", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1777:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1777:17:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1796:3:4" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1773:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1773:27:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1766:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "1766:35:4" - }, - "nodeType": "YulIf", - "src": "1763:2:4" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1827:27:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1847:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1841:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "1841:13:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1831:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1863:98:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1934:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1942:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1930:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "1930:17:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1949:6:4" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1957:3:4" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "1872:57:4" - }, - "nodeType": "YulFunctionCall", - "src": "1872:89:4" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1863:5:4" - } - ] - } - ] - }, - "name": "abi_decode_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1731:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1739:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1747:5:4", - "type": "" - } - ], - "src": "1681:286:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2025:87:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2035:29:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2057:6:4" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2044:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "2044:20:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2035:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2100:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "2073:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "2073:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2073:33:4" - } - ] - }, - "name": "abi_decode_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2003:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2011:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2019:5:4", - "type": "" - } - ], - "src": "1973:139:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2181:80:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2191:22:4", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2206:6:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2200:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "2200:13:4" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2191:5:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2249:5:4" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "2222:26:4" - }, - "nodeType": "YulFunctionCall", - "src": "2222:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2222:33:4" - } - ] - }, - "name": "abi_decode_t_uint256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2159:6:4", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2167:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2175:5:4", - "type": "" - } - ], - "src": "2118:143:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2344:207:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2390:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2399:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2402:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2392:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2392:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2392:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2365:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2374:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2361:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2361:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2386:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2357:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2357:32:4" - }, - "nodeType": "YulIf", - "src": "2354:2:4" - }, - { - "nodeType": "YulBlock", - "src": "2416:128:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2431:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2445:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2435:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2460:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2506:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2517:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2502:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2502:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2526:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "2470:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "2470:64:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2460:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2314:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2325:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2337:6:4", - "type": "" - } - ], - "src": "2267:284:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2659:318:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2705:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2714:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2717:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2707:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2707:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2707:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2680:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2689:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2676:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2676:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2701:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2672:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2672:32:4" - }, - "nodeType": "YulIf", - "src": "2669:2:4" - }, - { - "nodeType": "YulBlock", - "src": "2731:239:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2746:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2770:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2781:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2766:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2766:17:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2760:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "2760:24:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2750:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2831:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2840:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2843:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2833:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "2833:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "2833:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2803:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2811:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2800:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "2800:30:4" - }, - "nodeType": "YulIf", - "src": "2797:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "2861:99:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2932:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2943:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2928:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "2928:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2952:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "2871:56:4" - }, - "nodeType": "YulFunctionCall", - "src": "2871:89:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2861:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2629:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2640:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2652:6:4", - "type": "" - } - ], - "src": "2557:420:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3049:196:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3095:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3104:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3107:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3097:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3097:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3097:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3070:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3079:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3066:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3066:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3091:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3062:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3062:32:4" - }, - "nodeType": "YulIf", - "src": "3059:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3121:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3136:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3150:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3140:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3165:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3200:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3211:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3196:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3196:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3220:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "3175:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3175:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3165:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3019:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3030:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3042:6:4", - "type": "" - } - ], - "src": "2983:262:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3334:324:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3380:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3389:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3392:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3382:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3382:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3382:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3355:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3364:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3351:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3351:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3376:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3347:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3347:32:4" - }, - "nodeType": "YulIf", - "src": "3344:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3406:117:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3421:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3435:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3425:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3450:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3485:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3496:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3481:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3481:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3505:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "3460:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3460:53:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3450:6:4" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "3533:118:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3548:16:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3562:2:4", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3552:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3578:63:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3613:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3624:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3609:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3609:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3633:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "3588:20:4" - }, - "nodeType": "YulFunctionCall", - "src": "3588:53:4" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3578:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3296:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3307:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3319:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3327:6:4", - "type": "" - } - ], - "src": "3251:407:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3750:302:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3796:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3805:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3808:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3798:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3798:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3798:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3771:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3780:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3767:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3767:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3792:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3763:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3763:32:4" - }, - "nodeType": "YulIf", - "src": "3760:2:4" - }, - { - "nodeType": "YulBlock", - "src": "3822:223:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3837:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3861:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3872:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3857:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "3857:17:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3851:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "3851:24:4" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3841:6:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3922:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3931:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3934:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3924:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "3924:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "3924:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3894:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3902:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3891:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "3891:30:4" - }, - "nodeType": "YulIf", - "src": "3888:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "3952:83:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4007:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4018:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4003:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4003:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4027:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "3962:40:4" - }, - "nodeType": "YulFunctionCall", - "src": "3962:73:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3952:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3720:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3731:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3743:6:4", - "type": "" - } - ], - "src": "3664:388:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4135:207:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4181:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4190:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4193:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4183:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4183:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4183:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4156:7:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4165:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4152:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4152:23:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4177:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4148:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4148:32:4" - }, - "nodeType": "YulIf", - "src": "4145:2:4" - }, - { - "nodeType": "YulBlock", - "src": "4207:128:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4222:15:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4236:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4226:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4251:74:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4297:9:4" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4308:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4293:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "4293:22:4" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4317:7:4" - } - ], - "functionName": { - "name": "abi_decode_t_uint256_fromMemory", - "nodeType": "YulIdentifier", - "src": "4261:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "4261:64:4" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4251:6:4" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4105:9:4", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4116:7:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4128:6:4", - "type": "" - } - ], - "src": "4058:284:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4407:50:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4424:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4444:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bool", - "nodeType": "YulIdentifier", - "src": "4429:14:4" - }, - "nodeType": "YulFunctionCall", - "src": "4429:21:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4417:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4417:34:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4417:34:4" - } - ] - }, - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4395:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4402:3:4", - "type": "" - } - ], - "src": "4348:109:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4528:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4545:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4568:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4550:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "4550:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4538:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4538:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4538:37:4" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4516:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4523:3:4", - "type": "" - } - ], - "src": "4463:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4670:74:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4687:3:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4730:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4712:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "4712:24:4" - } - ], - "functionName": { - "name": "leftAlign_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4692:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "4692:45:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4680:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "4680:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4680:58:4" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4658:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4665:3:4", - "type": "" - } - ], - "src": "4587:157:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4840:270:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4850:52:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4896:5:4" - } - ], - "functionName": { - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "4864:31:4" - }, - "nodeType": "YulFunctionCall", - "src": "4864:38:4" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4854:6:4", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4911:77:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4976:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4981:6:4" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "4918:57:4" - }, - "nodeType": "YulFunctionCall", - "src": "4918:70:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4911:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5023:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5030:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5019:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5019:16:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5037:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5042:6:4" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "4997:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "4997:52:4" - }, - "nodeType": "YulExpressionStatement", - "src": "4997:52:4" - }, - { - "nodeType": "YulAssignment", - "src": "5058:46:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5069:3:4" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5096:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "5074:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "5074:29:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5065:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "5065:39:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5058:3:4" - } - ] - } - ] - }, - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4821:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4828:3:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4836:3:4", - "type": "" - } - ], - "src": "4750:360:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5197:82:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5214:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5266:5:4" - } - ], - "functionName": { - "name": "convert_t_contract$_ITellor_$2435_to_t_address", - "nodeType": "YulIdentifier", - "src": "5219:46:4" - }, - "nodeType": "YulFunctionCall", - "src": "5219:53:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5207:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5207:66:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5207:66:4" - } - ] - }, - "name": "abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5185:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5192:3:4", - "type": "" - } - ], - "src": "5116:163:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5435:151:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5452:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5573:5:4" - } - ], - "functionName": { - "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", - "nodeType": "YulIdentifier", - "src": "5457:115:4" - }, - "nodeType": "YulFunctionCall", - "src": "5457:122:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5445:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5445:135:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5445:135:4" - } - ] - }, - "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5423:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5430:3:4", - "type": "" - } - ], - "src": "5285:301:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5657:53:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5674:3:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5697:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "5679:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "5679:24:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5667:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5667:37:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5667:37:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5645:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5652:3:4", - "type": "" - } - ], - "src": "5592:118:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5799:74:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5816:3:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5859:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "5841:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "5841:24:4" - } - ], - "functionName": { - "name": "leftAlign_t_uint256", - "nodeType": "YulIdentifier", - "src": "5821:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "5821:45:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5809:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "5809:58:4" - }, - "nodeType": "YulExpressionStatement", - "src": "5809:58:4" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5787:5:4", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5794:3:4", - "type": "" - } - ], - "src": "5716:157:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6023:253:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6096:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6105:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "6034:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "6034:75:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6034:75:4" - }, - { - "nodeType": "YulAssignment", - "src": "6118:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6129:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6134:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6125:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6125:12:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6118:3:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6209:6:4" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6218:3:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "6147:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "6147:75:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6147:75:4" - }, - { - "nodeType": "YulAssignment", - "src": "6231:19:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6242:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6247:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6238:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6238:12:4" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6231:3:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6260:10:4", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6267:3:4" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6260:3:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5994:3:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6000:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6008:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6019:3:4", - "type": "" - } - ], - "src": "5879:397:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6374:118:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6384:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6396:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6407:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6392:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6392:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6384:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6458:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6471:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6482:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6467:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6467:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "6420:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "6420:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6420:65:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6346:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6358:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6369:4:4", - "type": "" - } - ], - "src": "6282:210:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6664:351:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6674:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6686:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6697:2:4", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6682:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6682:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6674:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6748:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6761:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6772:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6757:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6757:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "6710:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "6710:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6710:65:4" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6796:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6807:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6792:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6792:18:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6816:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6822:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6812:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6812:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6785:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "6785:48:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6785:48:4" - }, - { - "nodeType": "YulAssignment", - "src": "6842:84:4", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6912:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6921:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "6850:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "6850:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6842:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "6980:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6993:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7004:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6989:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "6989:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "6936:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "6936:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "6936:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6620:9:4", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6632:6:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6640:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6648:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6659:4:4", - "type": "" - } - ], - "src": "6498:517:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7141:200:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7151:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7163:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7174:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7159:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7159:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7151:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7225:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7238:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7249:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7234:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7234:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "7187:37:4" - }, - "nodeType": "YulFunctionCall", - "src": "7187:65:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7187:65:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7306:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7319:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7330:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7315:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7315:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "7262:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7262:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7262:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7105:9:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7117:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7125:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7136:4:4", - "type": "" - } - ], - "src": "7021:320:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7445:124:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7455:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7467:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7478:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7463:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7463:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7455:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7535:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7548:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7559:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7544:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7544:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "7491:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7491:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7491:71:4" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7417:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7429:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7440:4:4", - "type": "" - } - ], - "src": "7347:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7701:206:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7711:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7723:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7734:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7719:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7719:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7711:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7791:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7804:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7815:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7800:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7800:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "7747:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7747:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7747:71:4" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7872:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7885:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7896:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7881:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "7881:18:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "7828:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "7828:72:4" - }, - "nodeType": "YulExpressionStatement", - "src": "7828:72:4" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7665:9:4", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7677:6:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7685:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7696:4:4", - "type": "" - } - ], - "src": "7575:332:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8029:193:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8039:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8051:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8062:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8047:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8047:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8039:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8086:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8097:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8082:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8082:17:4" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8105:4:4" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8111:9:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8101:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8101:20:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8075:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "8075:47:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8075:47:4" - }, - { - "nodeType": "YulAssignment", - "src": "8131:84:4", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8201:6:4" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8210:4:4" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "8139:61:4" - }, - "nodeType": "YulFunctionCall", - "src": "8139:76:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8131:4:4" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8001:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8013:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8024:4:4", - "type": "" - } - ], - "src": "7913:309:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8342:140:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8352:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8364:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8375:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8360:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8360:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8352:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8448:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8461:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8472:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8457:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8457:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "8388:59:4" - }, - "nodeType": "YulFunctionCall", - "src": "8388:87:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8388:87:4" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_ITellor_$2435__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8314:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8326:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8337:4:4", - "type": "" - } - ], - "src": "8228:254:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8671:209:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8681:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8693:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8704:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8689:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8689:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8681:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8846:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8859:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8870:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8855:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "8855:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "8717:128:4" - }, - "nodeType": "YulFunctionCall", - "src": "8717:156:4" - }, - "nodeType": "YulExpressionStatement", - "src": "8717:156:4" - } - ] - }, - "name": "abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8643:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8655:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8666:4:4", - "type": "" - } - ], - "src": "8488:392:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8984:124:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8994:26:4", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9006:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9017:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9002:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9002:18:4" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8994:4:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9074:6:4" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9087:9:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9098:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9083:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9083:17:4" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "9030:43:4" - }, - "nodeType": "YulFunctionCall", - "src": "9030:71:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9030:71:4" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8956:9:4", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8968:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8979:4:4", - "type": "" - } - ], - "src": "8886:222:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9155:88:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9165:30:4", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_unbounded", - "nodeType": "YulIdentifier", - "src": "9175:18:4" - }, - "nodeType": "YulFunctionCall", - "src": "9175:20:4" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "9165:6:4" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "9224:6:4" - }, - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9232:4:4" - } - ], - "functionName": { - "name": "finalize_allocation", - "nodeType": "YulIdentifier", - "src": "9204:19:4" - }, - "nodeType": "YulFunctionCall", - "src": "9204:33:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9204:33:4" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9139:4:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "9148:6:4", - "type": "" - } - ], - "src": "9114:129:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9289:35:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9299:19:4", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9315:2:4", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "9309:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "9309:9:4" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "9299:6:4" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "9282:6:4", - "type": "" - } - ], - "src": "9249:75:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9412:229:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9517:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "9519:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "9519:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9519:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9489:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9497:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9486:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "9486:30:4" - }, - "nodeType": "YulIf", - "src": "9483:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "9549:25:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9561:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9569:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "9557:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9557:17:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9549:4:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9611:23:4", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9623:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9629:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9619:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9619:15:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9611:4:4" - } - ] - } - ] - }, - "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9396:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9407:4:4", - "type": "" - } - ], - "src": "9330:311:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9713:241:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9818:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "9820:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "9820:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "9820:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9790:6:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9798:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9787:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "9787:30:4" - }, - "nodeType": "YulIf", - "src": "9784:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "9850:37:4", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9880:6:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "9858:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "9858:29:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9850:4:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9924:23:4", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9936:4:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9942:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9932:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "9932:15:4" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9924:4:4" - } - ] - } - ] - }, - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9697:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9708:4:4", - "type": "" - } - ], - "src": "9647:307:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10018:40:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10029:22:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10045:5:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10039:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "10039:12:4" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10029:6:4" - } - ] - } - ] - }, - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10001:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10011:6:4", - "type": "" - } - ], - "src": "9960:98:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10159:73:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10176:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10181:6:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10169:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "10169:19:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10169:19:4" - }, - { - "nodeType": "YulAssignment", - "src": "10197:29:4", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10216:3:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10221:4:4", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10212:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10212:14:4" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "10197:11:4" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10131:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10136:6:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "10147:11:4", - "type": "" - } - ], - "src": "10064:168:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10282:261:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10292:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10315:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10297:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10297:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10292:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10326:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10349:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10331:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10331:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10326:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10489:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "10491:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "10491:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10491:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10410:1:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10417:66:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10485:1:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10413:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10413:74:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10407:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "10407:81:4" - }, - "nodeType": "YulIf", - "src": "10404:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "10521:16:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10532:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10535:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10528:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10528:9:4" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "10521:3:4" - } - ] - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "10269:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "10272:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "10278:3:4", - "type": "" - } - ], - "src": "10238:305:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10591:143:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10601:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10624:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10606:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10606:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10601:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10635:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10658:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10640:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10640:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10635:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10682:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "10684:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "10684:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10684:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10679:1:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10672:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "10672:9:4" - }, - "nodeType": "YulIf", - "src": "10669:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "10714:14:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10723:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10726:1:4" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "10719:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10719:9:4" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "10714:1:4" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "10580:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "10583:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "10589:1:4", - "type": "" - } - ], - "src": "10549:185:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10785:146:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10795:25:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10818:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10800:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10800:20:4" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10795:1:4" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10829:25:4", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10852:1:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "10834:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "10834:20:4" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10829:1:4" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10876:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "10878:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "10878:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "10878:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10870:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10873:1:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10867:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "10867:8:4" - }, - "nodeType": "YulIf", - "src": "10864:2:4" - }, - { - "nodeType": "YulAssignment", - "src": "10908:17:4", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "10920:1:4" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "10923:1:4" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10916:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "10916:9:4" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "10908:4:4" - } - ] - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "10771:1:4", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "10774:1:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "10780:4:4", - "type": "" - } - ], - "src": "10740:191:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10982:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10992:35:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11021:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "11003:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "11003:24:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "10992:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10964:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "10974:7:4", - "type": "" - } - ], - "src": "10937:96:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11081:48:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11091:32:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11116:5:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11109:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "11109:13:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11102:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "11102:21:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11091:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11063:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11073:7:4", - "type": "" - } - ], - "src": "11039:90:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11180:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11190:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11201:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11190:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11162:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11172:7:4", - "type": "" - } - ], - "src": "11135:77:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11348:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11358:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11369:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11358:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11330:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11340:7:4", - "type": "" - } - ], - "src": "11218:162:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11431:81:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11441:65:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11456:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11463:42:4", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11452:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "11452:54:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11441:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11413:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11423:7:4", - "type": "" - } - ], - "src": "11386:126:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11563:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11573:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11584:5:4" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "11573:7:4" - } - ] - } - ] - }, - "name": "cleanup_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11545:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "11555:7:4", - "type": "" - } - ], - "src": "11518:77:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11677:82:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11687:66:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11747:5:4" - } - ], - "functionName": { - "name": "convert_t_contract$_ITellor_$2435_to_t_uint160", - "nodeType": "YulIdentifier", - "src": "11700:46:4" - }, - "nodeType": "YulFunctionCall", - "src": "11700:53:4" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "11687:9:4" - } - ] - } - ] - }, - "name": "convert_t_contract$_ITellor_$2435_to_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11657:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "11667:9:4", - "type": "" - } - ], - "src": "11601:158:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11841:53:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11851:37:4", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11882:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "11864:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "11864:24:4" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "11851:9:4" - } - ] - } - ] - }, - "name": "convert_t_contract$_ITellor_$2435_to_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11821:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "11831:9:4", - "type": "" - } - ], - "src": "11765:129:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12045:152:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12055:136:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12184:5:4" - } - ], - "functionName": { - "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", - "nodeType": "YulIdentifier", - "src": "12081:102:4" - }, - "nodeType": "YulFunctionCall", - "src": "12081:109:4" - } - ], - "functionName": { - "name": "shift_left_0", - "nodeType": "YulIdentifier", - "src": "12068:12:4" - }, - "nodeType": "YulFunctionCall", - "src": "12068:123:4" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "12055:9:4" - } - ] - } - ] - }, - "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12025:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "12035:9:4", - "type": "" - } - ], - "src": "11900:297:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12252:258:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12262:10:4", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12271:1:4", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "12266:1:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12331:63:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12356:3:4" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12361:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12352:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12352:11:4" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "12375:3:4" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12380:1:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12371:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12371:11:4" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12365:5:4" - }, - "nodeType": "YulFunctionCall", - "src": "12365:18:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12345:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12345:39:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12345:39:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12292:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12295:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12289:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12289:13:4" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "12303:19:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12305:15:4", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12314:1:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12317:2:4", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12310:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12310:10:4" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12305:1:4" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "12285:3:4", - "statements": [] - }, - "src": "12281:113:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12428:76:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12478:3:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12483:6:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12474:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12474:16:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12492:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12467:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12467:27:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12467:27:4" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12409:1:4" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12412:6:4" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12406:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12406:13:4" - }, - "nodeType": "YulIf", - "src": "12403:2:4" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "12234:3:4", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "12239:3:4", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "12244:6:4", - "type": "" - } - ], - "src": "12203:307:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12559:238:4", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12569:58:4", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12591:6:4" - }, - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "12621:4:4" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "12599:21:4" - }, - "nodeType": "YulFunctionCall", - "src": "12599:27:4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12587:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "12587:40:4" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "12573:10:4", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12738:22:4", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "12740:16:4" - }, - "nodeType": "YulFunctionCall", - "src": "12740:18:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12740:18:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12681:10:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12693:18:4", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12678:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12678:34:4" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12717:10:4" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12729:6:4" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12714:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12714:22:4" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "12675:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "12675:62:4" - }, - "nodeType": "YulIf", - "src": "12672:2:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12776:2:4", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12780:10:4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12769:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "12769:22:4" - }, - "nodeType": "YulExpressionStatement", - "src": "12769:22:4" - } - ] - }, - "name": "finalize_allocation", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "12545:6:4", - "type": "" - }, - { - "name": "size", - "nodeType": "YulTypedName", - "src": "12553:4:4", - "type": "" - } - ], - "src": "12516:281:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12850:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12860:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12871:5:4" - }, - "variableNames": [ - { - "name": "aligned", - "nodeType": "YulIdentifier", - "src": "12860:7:4" - } - ] - } - ] - }, - "name": "leftAlign_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12832:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "aligned", - "nodeType": "YulTypedName", - "src": "12842:7:4", - "type": "" - } - ], - "src": "12803:79:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12935:32:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12945:16:4", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12956:5:4" - }, - "variableNames": [ - { - "name": "aligned", - "nodeType": "YulIdentifier", - "src": "12945:7:4" - } - ] - } - ] - }, - "name": "leftAlign_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12917:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "aligned", - "nodeType": "YulTypedName", - "src": "12927:7:4", - "type": "" - } - ], - "src": "12888:79:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13001:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13018:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13021:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13011:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13011:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13011:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13115:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13118:4:4", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13108:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13108:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13108:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13139:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13142:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13132:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13132:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13132:15:4" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "12973:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13187:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13204:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13207:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13197:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13197:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13197:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13301:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13304:4:4", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13294:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13294:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13294:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13325:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13328:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13318:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13318:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13318:15:4" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "13159:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13373:152:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13390:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13393:77:4", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13383:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13383:88:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13383:88:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13487:1:4", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13490:4:4", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13480:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13480:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13480:15:4" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13511:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13514:4:4", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13504:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13504:15:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13504:15:4" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "13345:180:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13579:54:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13589:38:4", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13607:5:4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13614:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13603:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13603:14:4" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13623:2:4", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "13619:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13619:7:4" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13599:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13599:28:4" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "13589:6:4" - } - ] - } - ] - }, - "name": "round_up_to_mul_of_32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13562:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "13572:6:4", - "type": "" - } - ], - "src": "13531:102:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13680:51:4", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13690:34:4", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13715:1:4", - "type": "", - "value": "0" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13718:5:4" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13711:3:4" - }, - "nodeType": "YulFunctionCall", - "src": "13711:13:4" - }, - "variableNames": [ - { - "name": "newValue", - "nodeType": "YulIdentifier", - "src": "13690:8:4" - } - ] - } - ] - }, - "name": "shift_left_0", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13661:5:4", - "type": "" - } - ], - "returnVariables": [ - { - "name": "newValue", - "nodeType": "YulTypedName", - "src": "13671:8:4", - "type": "" - } - ], - "src": "13639:92:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13780:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13837:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13846:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13849:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13839:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13839:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13839:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13803:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13828:5:4" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "13810:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "13810:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13800:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "13800:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13793:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13793:43:4" - }, - "nodeType": "YulIf", - "src": "13790:2:4" - } - ] - }, - "name": "validator_revert_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13773:5:4", - "type": "" - } - ], - "src": "13737:122:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13908:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13965:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13974:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13977:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13967:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13967:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "13967:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13931:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13956:5:4" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "13938:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "13938:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13928:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "13928:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13921:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "13921:43:4" - }, - "nodeType": "YulIf", - "src": "13918:2:4" - } - ] - }, - "name": "validator_revert_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13901:5:4", - "type": "" - } - ], - "src": "13865:122:4" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14036:79:4", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14093:16:4", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14102:1:4", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14105:1:4", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14095:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "14095:12:4" - }, - "nodeType": "YulExpressionStatement", - "src": "14095:12:4" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14059:5:4" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14084:5:4" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "14066:17:4" - }, - "nodeType": "YulFunctionCall", - "src": "14066:24:4" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "14056:2:4" - }, - "nodeType": "YulFunctionCall", - "src": "14056:35:4" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14049:6:4" - }, - "nodeType": "YulFunctionCall", - "src": "14049:43:4" - }, - "nodeType": "YulIf", - "src": "14046:2:4" - } - ] - }, - "name": "validator_revert_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "14029:5:4", - "type": "" - } - ], - "src": "13993:122:4" - } - ] - }, - "contents": "{\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n mstore(array, length) dst := add(array, 0x20)\n let src := offset\n if gt(add(src, mul(length, 0x20)), end) { revert(0, 0) }\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementPos := src\n mstore(dst, abi_decode_t_uint256_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n src := add(src, 0x20)\n }\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_memory_to_memory(src, dst, length)\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr_fromMemory(add(offset, 0x20), length, end)\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_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ITellor_$2435_to_t_address(value))\n }\n\n function abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value1, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n }\n\n function abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_contract$_ITellor_$2435__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ITellor_$2435_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\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 allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_contract$_ITellor_$2435_to_t_address(value) -> converted {\n converted := convert_t_contract$_ITellor_$2435_to_t_uint160(value)\n }\n\n function convert_t_contract$_ITellor_$2435_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(value)\n }\n\n function convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(value) -> converted {\n converted := shift_left_0(cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value))\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function shift_left_0(value) -> newValue {\n newValue :=\n\n shl(0, value)\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", - "id": 4, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": {}, - "linkReferences": {}, - "object": "608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212206bf2c06e53d58ce1c2bd5cf790f33fababd39b4a86e36ac5ca9648b7f68968c964736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH12 0xF2C06E53D58CE1C2BD5CF790 RETURN EXTCODEHASH 0xAB 0xAB 0xD3 SWAP12 0x4A DUP7 0xE3 PUSH11 0xC5CA9648B7F68968C96473 PUSH16 0x6C634300080300330000000000000000 ", - "sourceMap": "186:109:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;274:21:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3013:2155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6929:947;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5390:484;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1919:657;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;891:619;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;8113:505;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6108:528;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;274:21;;;;;;;;;;;;:::o;3013:2155::-;3127:11;3140:14;3170;3187:35;3213:8;3187:25;:35::i;:::-;3170:52;;3246:1;3237:6;:10;3233:1902;;;3263:14;3291:13;3307:1;3291:17;;3322:11;3345:1;3336:6;:10;;;;:::i;:::-;3322:24;;3360:13;3461:46;3491:8;3501:5;3461:29;:46::i;:::-;3453:54;;3534:10;3525:5;:19;3521:42;;3554:5;3561:1;3546:17;;;;;;;;;;;3521:42;3585:44;3615:8;3625:3;3585:29;:44::i;:::-;3577:52;;3655:10;3647:5;:18;3643:42;;;3675:4;3681:3;3667:18;;;;;;;;;;;3643:42;3775:1350;3782:4;3775:1350;;;3839:5;3835:1;3831;3822:5;3816:3;:11;;;;:::i;:::-;3815:17;;;;:::i;:::-;:21;;;;:::i;:::-;:29;;;;:::i;:::-;3806:38;;3870:47;3900:8;3910:6;3870:29;:47::i;:::-;3862:55;;3947:10;3939:5;:18;3935:1052;;;4028:17;4048:121;4103:8;4146:1;4137:6;:10;;;;:::i;:::-;4048:29;:121::i;:::-;4028:141;;4208:10;4195:9;:23;4191:281;;4297:4;4303:6;4289:21;;;;;;;;;;;;4191:281;4448:1;4439:6;:10;;;;:::i;:::-;4431:18;;3935:1052;;;;4518:17;4538:121;4593:8;4636:1;4627:6;:10;;;;:::i;:::-;4538:29;:121::i;:::-;4518:141;;4697:10;4685:9;:22;4681:288;;;4791:4;4806:1;4797:6;:10;;;;:::i;:::-;4783:25;;;;;;;;;;;;4681:288;4945:1;4936:6;:10;;;;:::i;:::-;4930:16;;3935:1052;;3775:1350;;;3233:1902;;;;;5152:5;5159:1;5144:17;;;;;3013:2155;;;;;;:::o;6929:947::-;7033:4;7053:19;7158:42;7140:61;;:6;;;;;;;;;;:61;;;:138;;;;7235:42;7217:61;;:6;;;;;;;;;;:61;;;7140:138;7123:559;;;7303:18;7349:42;7303:102;;7458:10;:20;;;7500:66;7458:126;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7419:179;;7123:559;;;;7651:6;;;;;;;;;;:17;;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7629:42;;7123:559;7868:1;7710:11;:42;;;7801:8;7811:10;7784:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7774:49;;;;;;7710:131;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:155;:159;7691:178;;;6929:947;;;;:::o;5390:484::-;5488:7;5587:42;5569:61;;:6;;;;;;;;;;:61;;;:138;;;;5664:42;5646:61;;:6;;;;;;;;;;:61;;;5569:138;5552:316;;;5739:6;;;;;;;;;;:28;;;5768:8;5739:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5732:45;;;;5552:316;5815:6;;;;;;;;;;:32;;;5848:8;5815:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5808:49;;5390:484;;;;:::o;1919:657::-;2038:16;2068:19;2101:27;2154:11;2167:14;2185:77;2220:8;2242:10;2185:21;:77::i;:::-;2153:109;;;;2277:6;2272:41;;2293:5;2300:9;;;;;;;;;;;;2311:1;2285:28;;;;;;;;;;2272:41;2323:13;2339:47;2369:8;2379:6;2339:29;:47::i;:::-;2323:63;;2405:29;2418:8;2428:5;2405:12;:29::i;:::-;2396:38;;2479:9;;;;;;;;;;;;2469:20;;;;;;2458:6;2448:17;;;;;;:41;2444:87;;2511:4;2517:6;2525:5;2503:28;;;;;;;;;;;2444:87;2549:5;2556:9;;;;;;;;;;;;2567:1;2541:28;;;;;;;;;1919:657;;;;;;:::o;891:619::-;992:16;1022:19;1055:27;1107:14;1124:35;1150:8;1124:25;:35::i;:::-;1107:52;;1184:1;1174:6;:11;1170:70;;;1209:5;1216:9;;;;;;;;;;;;1227:1;1201:28;;;;;;;;;1170:70;1249:13;1265:51;1295:8;1314:1;1305:6;:10;;;;:::i;:::-;1265:29;:51::i;:::-;1249:67;;1335:29;1348:8;1358:5;1335:12;:29::i;:::-;1326:38;;1409:9;;;;;;;;;;;;1399:20;;;;;;1388:6;1378:17;;;;;;:41;1374:87;;1441:4;1447:6;1455:5;1433:28;;;;;;;;;;1374:87;1479:5;1486:9;;;;;;;;;;;;1497:5;1471:32;;;;;;;;891:619;;;;;;:::o;8113:505::-;8218:12;8322:42;8304:61;;:6;;;;;;;;;;:61;;;:138;;;;8399:42;8381:61;;:6;;;;;;;;;;:61;;;8304:138;8287:325;;;8474:6;;;;;;;;;;:26;;;8501:8;8511:10;8474:48;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8467:55;;;;8287:325;8560:6;;;;;;;;;;:19;;;8580:8;8590:10;8560:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8553:48;;8113:505;;;;;:::o;6108:528::-;6226:7;6325:42;6307:61;;:6;;;;;;;;;;:61;;;:138;;;;6402:42;6384:61;;:6;;;;;;;;;;:61;;;6307:138;6290:340;;;6477:6;;;;;;;;;;:32;;;6510:8;6520:6;6477:50;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6470:57;;;;6290:340;6565:6;;;;;;;;;;:36;;;6602:8;6612:6;6565:54;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6558:61;;6108:528;;;;;:::o;24:645:4:-;;156:81;172:64;229:6;172:64;:::i;:::-;156:81;:::i;:::-;147:90;;257:5;285:6;278:5;271:21;311:4;304:5;300:16;293:23;;336:6;386:3;378:4;370:6;366:17;361:3;357:27;354:36;351:2;;;403:1;400;393:12;351:2;431:1;416:247;441:6;438:1;435:13;416:247;;;508:3;536:48;580:3;568:10;536:48;:::i;:::-;531:3;524:61;614:4;609:3;605:14;598:21;;648:4;643:3;639:14;632:21;;476:187;463:1;460;456:9;451:14;;416:247;;;420:14;137:532;;;;;;;:::o;675:352::-;;788:65;804:48;845:6;804:48;:::i;:::-;788:65;:::i;:::-;779:74;;876:6;869:5;862:21;914:4;907:5;903:16;952:3;943:6;938:3;934:16;931:25;928:2;;;969:1;966;959:12;928:2;982:39;1014:6;1009:3;1004;982:39;:::i;:::-;769:258;;;;;;:::o;1033:143::-;;1121:6;1115:13;1106:22;;1137:33;1164:5;1137:33;:::i;:::-;1096:80;;;;:::o;1199:318::-;;1330:3;1323:4;1315:6;1311:17;1307:27;1297:2;;1348:1;1345;1338:12;1297:2;1381:6;1375:13;1406:105;1507:3;1499:6;1492:4;1484:6;1480:17;1406:105;:::i;:::-;1397:114;;1287:230;;;;;:::o;1523:139::-;;1607:6;1594:20;1585:29;;1623:33;1650:5;1623:33;:::i;:::-;1575:87;;;;:::o;1681:286::-;;1796:3;1789:4;1781:6;1777:17;1773:27;1763:2;;1814:1;1811;1804:12;1763:2;1847:6;1841:13;1872:89;1957:3;1949:6;1942:4;1934:6;1930:17;1872:89;:::i;:::-;1863:98;;1753:214;;;;;:::o;1973:139::-;;2057:6;2044:20;2035:29;;2073:33;2100:5;2073:33;:::i;:::-;2025:87;;;;:::o;2118:143::-;;2206:6;2200:13;2191:22;;2222:33;2249:5;2222:33;:::i;:::-;2181:80;;;;:::o;2267:284::-;;2386:2;2374:9;2365:7;2361:23;2357:32;2354:2;;;2402:1;2399;2392:12;2354:2;2445:1;2470:64;2526:7;2517:6;2506:9;2502:22;2470:64;:::i;:::-;2460:74;;2416:128;2344:207;;;;:::o;2557:420::-;;2701:2;2689:9;2680:7;2676:23;2672:32;2669:2;;;2717:1;2714;2707:12;2669:2;2781:1;2770:9;2766:17;2760:24;2811:18;2803:6;2800:30;2797:2;;;2843:1;2840;2833:12;2797:2;2871:89;2952:7;2943:6;2932:9;2928:22;2871:89;:::i;:::-;2861:99;;2731:239;2659:318;;;;:::o;2983:262::-;;3091:2;3079:9;3070:7;3066:23;3062:32;3059:2;;;3107:1;3104;3097:12;3059:2;3150:1;3175:53;3220:7;3211:6;3200:9;3196:22;3175:53;:::i;:::-;3165:63;;3121:117;3049:196;;;;:::o;3251:407::-;;;3376:2;3364:9;3355:7;3351:23;3347:32;3344:2;;;3392:1;3389;3382:12;3344:2;3435:1;3460:53;3505:7;3496:6;3485:9;3481:22;3460:53;:::i;:::-;3450:63;;3406:117;3562:2;3588:53;3633:7;3624:6;3613:9;3609:22;3588:53;:::i;:::-;3578:63;;3533:118;3334:324;;;;;:::o;3664:388::-;;3792:2;3780:9;3771:7;3767:23;3763:32;3760:2;;;3808:1;3805;3798:12;3760:2;3872:1;3861:9;3857:17;3851:24;3902:18;3894:6;3891:30;3888:2;;;3934:1;3931;3924:12;3888:2;3962:73;4027:7;4018:6;4007:9;4003:22;3962:73;:::i;:::-;3952:83;;3822:223;3750:302;;;;:::o;4058:284::-;;4177:2;4165:9;4156:7;4152:23;4148:32;4145:2;;;4193:1;4190;4183:12;4145:2;4236:1;4261:64;4317:7;4308:6;4297:9;4293:22;4261:64;:::i;:::-;4251:74;;4207:128;4135:207;;;;:::o;4348:109::-;4429:21;4444:5;4429:21;:::i;:::-;4424:3;4417:34;4407:50;;:::o;4463:118::-;4550:24;4568:5;4550:24;:::i;:::-;4545:3;4538:37;4528:53;;:::o;4587:157::-;4692:45;4712:24;4730:5;4712:24;:::i;:::-;4692:45;:::i;:::-;4687:3;4680:58;4670:74;;:::o;4750:360::-;;4864:38;4896:5;4864:38;:::i;:::-;4918:70;4981:6;4976:3;4918:70;:::i;:::-;4911:77;;4997:52;5042:6;5037:3;5030:4;5023:5;5019:16;4997:52;:::i;:::-;5074:29;5096:6;5074:29;:::i;:::-;5069:3;5065:39;5058:46;;4840:270;;;;;:::o;5116:163::-;5219:53;5266:5;5219:53;:::i;:::-;5214:3;5207:66;5197:82;;:::o;5285:301::-;5457:122;5573:5;5457:122;:::i;:::-;5452:3;5445:135;5435:151;;:::o;5592:118::-;5679:24;5697:5;5679:24;:::i;:::-;5674:3;5667:37;5657:53;;:::o;5716:157::-;5821:45;5841:24;5859:5;5841:24;:::i;:::-;5821:45;:::i;:::-;5816:3;5809:58;5799:74;;:::o;5879:397::-;;6034:75;6105:3;6096:6;6034:75;:::i;:::-;6134:2;6129:3;6125:12;6118:19;;6147:75;6218:3;6209:6;6147:75;:::i;:::-;6247:2;6242:3;6238:12;6231:19;;6267:3;6260:10;;6023:253;;;;;:::o;6282:210::-;;6407:2;6396:9;6392:18;6384:26;;6420:65;6482:1;6471:9;6467:17;6458:6;6420:65;:::i;:::-;6374:118;;;;:::o;6498:517::-;;6697:2;6686:9;6682:18;6674:26;;6710:65;6772:1;6761:9;6757:17;6748:6;6710:65;:::i;:::-;6822:9;6816:4;6812:20;6807:2;6796:9;6792:18;6785:48;6850:76;6921:4;6912:6;6850:76;:::i;:::-;6842:84;;6936:72;7004:2;6993:9;6989:18;6980:6;6936:72;:::i;:::-;6664:351;;;;;;:::o;7021:320::-;;7174:2;7163:9;7159:18;7151:26;;7187:65;7249:1;7238:9;7234:17;7225:6;7187:65;:::i;:::-;7262:72;7330:2;7319:9;7315:18;7306:6;7262:72;:::i;:::-;7141:200;;;;;:::o;7347:222::-;;7478:2;7467:9;7463:18;7455:26;;7491:71;7559:1;7548:9;7544:17;7535:6;7491:71;:::i;:::-;7445:124;;;;:::o;7575:332::-;;7734:2;7723:9;7719:18;7711:26;;7747:71;7815:1;7804:9;7800:17;7791:6;7747:71;:::i;:::-;7828:72;7896:2;7885:9;7881:18;7872:6;7828:72;:::i;:::-;7701:206;;;;;:::o;7913:309::-;;8062:2;8051:9;8047:18;8039:26;;8111:9;8105:4;8101:20;8097:1;8086:9;8082:17;8075:47;8139:76;8210:4;8201:6;8139:76;:::i;:::-;8131:84;;8029:193;;;;:::o;8228:254::-;;8375:2;8364:9;8360:18;8352:26;;8388:87;8472:1;8461:9;8457:17;8448:6;8388:87;:::i;:::-;8342:140;;;;:::o;8488:392::-;;8704:2;8693:9;8689:18;8681:26;;8717:156;8870:1;8859:9;8855:17;8846:6;8717:156;:::i;:::-;8671:209;;;;:::o;8886:222::-;;9017:2;9006:9;9002:18;8994:26;;9030:71;9098:1;9087:9;9083:17;9074:6;9030:71;:::i;:::-;8984:124;;;;:::o;9114:129::-;;9175:20;;:::i;:::-;9165:30;;9204:33;9232:4;9224:6;9204:33;:::i;:::-;9155:88;;;:::o;9249:75::-;;9315:2;9309:9;9299:19;;9289:35;:::o;9330:311::-;;9497:18;9489:6;9486:30;9483:2;;;9519:18;;:::i;:::-;9483:2;9569:4;9561:6;9557:17;9549:25;;9629:4;9623;9619:15;9611:23;;9412:229;;;:::o;9647:307::-;;9798:18;9790:6;9787:30;9784:2;;;9820:18;;:::i;:::-;9784:2;9858:29;9880:6;9858:29;:::i;:::-;9850:37;;9942:4;9936;9932:15;9924:23;;9713:241;;;:::o;9960:98::-;;10045:5;10039:12;10029:22;;10018:40;;;:::o;10064:168::-;;10181:6;10176:3;10169:19;10221:4;10216:3;10212:14;10197:29;;10159:73;;;;:::o;10238:305::-;;10297:20;10315:1;10297:20;:::i;:::-;10292:25;;10331:20;10349:1;10331:20;:::i;:::-;10326:25;;10485:1;10417:66;10413:74;10410:1;10407:81;10404:2;;;10491:18;;:::i;:::-;10404:2;10535:1;10532;10528:9;10521:16;;10282:261;;;;:::o;10549:185::-;;10606:20;10624:1;10606:20;:::i;:::-;10601:25;;10640:20;10658:1;10640:20;:::i;:::-;10635:25;;10679:1;10669:2;;10684:18;;:::i;:::-;10669:2;10726:1;10723;10719:9;10714:14;;10591:143;;;;:::o;10740:191::-;;10800:20;10818:1;10800:20;:::i;:::-;10795:25;;10834:20;10852:1;10834:20;:::i;:::-;10829:25;;10873:1;10870;10867:8;10864:2;;;10878:18;;:::i;:::-;10864:2;10923:1;10920;10916:9;10908:17;;10785:146;;;;:::o;10937:96::-;;11003:24;11021:5;11003:24;:::i;:::-;10992:35;;10982:51;;;:::o;11039:90::-;;11116:5;11109:13;11102:21;11091:32;;11081:48;;;:::o;11135:77::-;;11201:5;11190:16;;11180:32;;;:::o;11218:162::-;;11369:5;11358:16;;11348:32;;;:::o;11386:126::-;;11463:42;11456:5;11452:54;11441:65;;11431:81;;;:::o;11518:77::-;;11584:5;11573:16;;11563:32;;;:::o;11601:158::-;;11700:53;11747:5;11700:53;:::i;:::-;11687:66;;11677:82;;;:::o;11765:129::-;;11864:24;11882:5;11864:24;:::i;:::-;11851:37;;11841:53;;;:::o;11900:297::-;;12068:123;12081:109;12184:5;12081:109;:::i;:::-;12068:123;:::i;:::-;12055:136;;12045:152;;;:::o;12203:307::-;12271:1;12281:113;12295:6;12292:1;12289:13;12281:113;;;12380:1;12375:3;12371:11;12365:18;12361:1;12356:3;12352:11;12345:39;12317:2;12314:1;12310:10;12305:15;;12281:113;;;12412:6;12409:1;12406:13;12403:2;;;12492:1;12483:6;12478:3;12474:16;12467:27;12403:2;12252:258;;;;:::o;12516:281::-;12599:27;12621:4;12599:27;:::i;:::-;12591:6;12587:40;12729:6;12717:10;12714:22;12693:18;12681:10;12678:34;12675:62;12672:2;;;12740:18;;:::i;:::-;12672:2;12780:10;12776:2;12769:22;12559:238;;;:::o;12803:79::-;;12871:5;12860:16;;12850:32;;;:::o;12888:79::-;;12956:5;12945:16;;12935:32;;;:::o;12973:180::-;13021:77;13018:1;13011:88;13118:4;13115:1;13108:15;13142:4;13139:1;13132:15;13159:180;13207:77;13204:1;13197:88;13304:4;13301:1;13294:15;13328:4;13325:1;13318:15;13345:180;13393:77;13390:1;13383:88;13490:4;13487:1;13480:15;13514:4;13511:1;13504:15;13531:102;;13623:2;13619:7;13614:2;13607:5;13603:14;13599:28;13589:38;;13579:54;;;:::o;13639:92::-;;13718:5;13715:1;13711:13;13690:34;;13680:51;;;:::o;13737:122::-;13810:24;13828:5;13810:24;:::i;:::-;13803:5;13800:35;13790:2;;13849:1;13846;13839:12;13790:2;13780:79;:::o;13865:122::-;13938:24;13956:5;13938:24;:::i;:::-;13931:5;13928:35;13918:2;;13977:1;13974;13967:12;13918:2;13908:79;:::o;13993:122::-;14066:24;14084:5;14066:24;:::i;:::-;14059:5;14056:35;14046:2;;14105:1;14102;14095:12;14046:2;14036:79;:::o" - }, - "methodIdentifiers": { - "getCurrentValue(bytes32)": "adf1639d", - "getDataBefore(bytes32,uint256)": "a792765f", - "getIndexForDataBefore(bytes32,uint256)": "29449085", - "getNewValueCountbyQueryId(bytes32)": "77b03e0d", - "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", - "isInDispute(bytes32,uint256)": "44e87f91", - "retrieveData(bytes32,uint256)": "c5958af9", - "tellor()": "1959ad5b" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_tellor\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentValue\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getIndexForDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_found\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"isInDispute\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tellor\",\"outputs\":[{\"internalType\":\"contract ITellor\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"getCurrentValue(bytes32)\":{\"details\":\"Allows the user to get the latest value for the queryId specified\",\"params\":{\"_queryId\":\"is the id to look up the value for\"},\"returns\":{\"_ifRetrieve\":\"bool true if non-zero value successfully retrieved\",\"_timestampRetrieved\":\"the retrieved value's timestamp\",\"_value\":\"the value retrieved\"}},\"getDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves the latest value for the queryId before the specified timestamp\",\"params\":{\"_queryId\":\"is the queryId to look up the value for\",\"_timestamp\":\"before which to search for latest value\"},\"returns\":{\"_ifRetrieve\":\"bool true if able to retrieve a non-zero value\",\"_timestampRetrieved\":\"the value's timestamp\",\"_value\":\"the value retrieved\"}},\"getIndexForDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves latest array index of data before the specified timestamp for the queryId\",\"params\":{\"_queryId\":\"is the queryId to look up the index for\",\"_timestamp\":\"is the timestamp before which to search for the latest index\"},\"returns\":{\"_found\":\"whether the index was found\",\"_index\":\"the latest index found before the specified timestamp\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for the queryId\",\"params\":{\"_queryId\":\"the id to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"isInDispute(bytes32,uint256)\":{\"details\":\"Determines whether a value with a given queryId and timestamp has been disputed\",\"params\":{\"_queryId\":\"is the value id to look up\",\"_timestamp\":\"is the timestamp of the value to look up\"},\"returns\":{\"_0\":\"bool true if queryId/timestamp is under dispute\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieve value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for query/timestamp submitted\"}}},\"title\":\"UserContract This contract inherits UsingTellor for simulating user interaction\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/mocks/BenchUsingTellor.sol\":\"BenchUsingTellor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/UsingTellor.sol\":{\"keccak256\":\"0x92f27d93725f4bbda8434d00f4eaceacf9b590e6a668607cf832d2490d095b9c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c229768f6909ab94b7b3a2dfa1980977d89513b84b02ac170851913459b4808f\",\"dweb:/ipfs/QmdHnNLQbDJML5ENDMybf7UNSkgpiKegWkoDP47syz2xdj\"]},\"contracts/interface/ITellor.sol\":{\"keccak256\":\"0xa8b54594c55c9cff8db4628431e4817a16303cbcecb592401a8ed905529830bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2af86da21cfadcdc339e0113757e243ffc0d110bc14d628e7302781f255c28ea\",\"dweb:/ipfs/QmYUUpAxCqANyfKbeD5brbFfN5psEdvoFwsw7M4Gv7paY4\"]},\"contracts/mocks/BenchUsingTellor.sol\":{\"keccak256\":\"0x8ff590b6f7560f68a48633efb334cdb00a3f7eb8e218b86f28553403adfb5840\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a70a62c396eaa2b698cb5ac2b9532bf84edce87316deac5fc79fe4912f3d2263\",\"dweb:/ipfs/QmbsAYBsnP1n3LxfQcF6r8UNyfqUhtexCSVitdHDvbUUnD\"]}},\"version\":1}" - } - } - }, - "sources": { - "contracts/TellorPlayground.sol": { - "ast": { - "absolutePath": "contracts/TellorPlayground.sol", - "exportedSymbols": { - "TellorPlayground": [ - 1164 - ] - }, - "id": 1165, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:23:0" - }, - { - "abstract": false, - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1164, - "linearizedBaseContracts": [ - 1164 - ], - "name": "TellorPlayground", - "nameLocation": "66:16:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "id": 9, - "name": "Approval", - "nameLocation": "109:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 8, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "143:5:0", - "nodeType": "VariableDeclaration", - "scope": 9, - "src": "127:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "127:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5, - "indexed": true, - "mutability": "mutable", - "name": "spender", - "nameLocation": "174:7:0", - "nodeType": "VariableDeclaration", - "scope": 9, - "src": "158:23:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "158:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "199:5:0", - "nodeType": "VariableDeclaration", - "scope": 9, - "src": "191:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "191:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "117:93:0" - }, - "src": "103:108:0" - }, - { - "anonymous": false, - "id": 25, - "name": "NewReport", - "nameLocation": "222:9:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 24, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11, - "indexed": false, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "249:8:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "241:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "241:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 13, - "indexed": false, - "mutability": "mutable", - "name": "_time", - "nameLocation": "275:5:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "267:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 12, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "267:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 15, - "indexed": false, - "mutability": "mutable", - "name": "_value", - "nameLocation": "296:6:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "290:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 14, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 17, - "indexed": false, - "mutability": "mutable", - "name": "_reward", - "nameLocation": "320:7:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "312:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 16, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "312:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 19, - "indexed": false, - "mutability": "mutable", - "name": "_nonce", - "nameLocation": "345:6:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "337:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 18, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "337:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 21, - "indexed": false, - "mutability": "mutable", - "name": "_queryData", - "nameLocation": "367:10:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "361:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 20, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "361:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 23, - "indexed": false, - "mutability": "mutable", - "name": "_reporter", - "nameLocation": "395:9:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "387:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 22, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "387:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "231:179:0" - }, - "src": "216:195:0" - }, - { - "anonymous": false, - "id": 31, - "name": "NewStaker", - "nameLocation": "422:9:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 30, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 27, - "indexed": false, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "440:7:0", - "nodeType": "VariableDeclaration", - "scope": 31, - "src": "432:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 26, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "432:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 29, - "indexed": false, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "457:7:0", - "nodeType": "VariableDeclaration", - "scope": 31, - "src": "449:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 28, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "449:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "431:34:0" - }, - "src": "416:50:0" - }, - { - "anonymous": false, - "id": 43, - "name": "TipAdded", - "nameLocation": "477:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 42, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 33, - "indexed": true, - "mutability": "mutable", - "name": "_user", - "nameLocation": "511:5:0", - "nodeType": "VariableDeclaration", - "scope": 43, - "src": "495:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 32, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "495:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 35, - "indexed": true, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "542:8:0", - "nodeType": "VariableDeclaration", - "scope": 43, - "src": "526:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 34, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "526:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 37, - "indexed": false, - "mutability": "mutable", - "name": "_tip", - "nameLocation": "568:4:0", - "nodeType": "VariableDeclaration", - "scope": 43, - "src": "560:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 36, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "560:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 39, - "indexed": false, - "mutability": "mutable", - "name": "_totalTip", - "nameLocation": "590:9:0", - "nodeType": "VariableDeclaration", - "scope": 43, - "src": "582:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 38, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "582:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 41, - "indexed": false, - "mutability": "mutable", - "name": "_queryData", - "nameLocation": "615:10:0", - "nodeType": "VariableDeclaration", - "scope": 43, - "src": "609:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 40, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "609:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "485:146:0" - }, - "src": "471:161:0" - }, - { - "anonymous": false, - "id": 49, - "name": "StakeWithdrawRequested", - "nameLocation": "643:22:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 48, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 45, - "indexed": false, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "674:7:0", - "nodeType": "VariableDeclaration", - "scope": 49, - "src": "666:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 44, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "666:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 47, - "indexed": false, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "691:7:0", - "nodeType": "VariableDeclaration", - "scope": 49, - "src": "683:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 46, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "683:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "665:34:0" - }, - "src": "637:63:0" - }, - { - "anonymous": false, - "id": 53, - "name": "StakeWithdrawn", - "nameLocation": "711:14:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 52, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 51, - "indexed": false, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "734:7:0", - "nodeType": "VariableDeclaration", - "scope": 53, - "src": "726:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 50, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "726:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "725:17:0" - }, - "src": "705:38:0" - }, - { - "anonymous": false, - "id": 61, - "name": "Transfer", - "nameLocation": "754:8:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 60, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 55, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "779:4:0", - "nodeType": "VariableDeclaration", - "scope": 61, - "src": "763:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 54, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "763:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 57, - "indexed": true, - "mutability": "mutable", - "name": "to", - "nameLocation": "801:2:0", - "nodeType": "VariableDeclaration", - "scope": 61, - "src": "785:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 56, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "785:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 59, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "813:5:0", - "nodeType": "VariableDeclaration", - "scope": 61, - "src": "805:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 58, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "805:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "762:57:0" - }, - "src": "748:72:0" - }, - { - "constant": false, - "functionSelector": "699f200f", - "id": 65, - "mutability": "mutable", - "name": "addresses", - "nameLocation": "876:9:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "841:44:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - }, - "typeName": { - "id": 64, - "keyType": { - "id": 62, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "849:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "841:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - }, - "valueType": { - "id": 63, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "860:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "64473df2", - "id": 71, - "mutability": "mutable", - "name": "isDisputed", - "nameLocation": "943:10:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "891:62:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bool_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bool))" - }, - "typeName": { - "id": 70, - "keyType": { - "id": 66, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "899:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "891:44:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bool_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bool))" - }, - "valueType": { - "id": 69, - "keyType": { - "id": 67, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "918:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "910:24:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", - "typeString": "mapping(uint256 => bool)" - }, - "valueType": { - "id": 68, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "929:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "217053c0", - "id": 77, - "mutability": "mutable", - "name": "reporterByTimestamp", - "nameLocation": "1046:19:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "991:74:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => address))" - }, - "typeName": { - "id": 76, - "keyType": { - "id": 72, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "999:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "991:47:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => address))" - }, - "valueType": { - "id": 75, - "keyType": { - "id": 73, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1018:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "1010:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "valueType": { - "id": 74, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1029:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 82, - "mutability": "mutable", - "name": "stakerDetails", - "nameLocation": "1101:13:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1071:43:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo)" - }, - "typeName": { - "id": 81, - "keyType": { - "id": 78, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1079:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1071:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo)" - }, - "valueType": { - "id": 80, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 79, - "name": "StakeInfo", - "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "1090:9:0" - }, - "referencedDeclaration": 142, - "src": "1090:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - } - } - }, - "visibility": "internal" - }, - { - "constant": false, - "functionSelector": "f25133f3", - "id": 87, - "mutability": "mutable", - "name": "timestamps", - "nameLocation": "1212:10:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1175:47:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[])" - }, - "typeName": { - "id": 86, - "keyType": { - "id": 83, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1183:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "1175:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[])" - }, - "valueType": { - "baseType": { - "id": 84, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1194:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 85, - "nodeType": "ArrayTypeName", - "src": "1194:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "602bf227", - "id": 91, - "mutability": "mutable", - "name": "tips", - "nameLocation": "1263:4:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1228:39:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 90, - "keyType": { - "id": 88, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1236:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "1228:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 89, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1247:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "091b50ff", - "id": 97, - "mutability": "mutable", - "name": "values", - "nameLocation": "1386:6:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1333:59:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bytes))" - }, - "typeName": { - "id": 96, - "keyType": { - "id": 92, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1341:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "1333:45:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bytes))" - }, - "valueType": { - "id": 95, - "keyType": { - "id": 93, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1360:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "1352:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes)" - }, - "valueType": { - "id": 94, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1371:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "c979fe9f", - "id": 102, - "mutability": "mutable", - "name": "voteRounds", - "nameLocation": "1467:10:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1430:47:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[])" - }, - "typeName": { - "id": 101, - "keyType": { - "id": 98, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1438:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "1430:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[])" - }, - "valueType": { - "baseType": { - "id": 99, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1449:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 100, - "nodeType": "ArrayTypeName", - "src": "1449:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 108, - "mutability": "mutable", - "name": "_allowances", - "nameLocation": "1603:11:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1547:67:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "typeName": { - "id": 107, - "keyType": { - "id": 103, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1555:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1547:47:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "valueType": { - "id": 106, - "keyType": { - "id": 104, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1574:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1566:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 105, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1585:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 112, - "mutability": "mutable", - "name": "_balances", - "nameLocation": "1656:9:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1620:45:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 111, - "keyType": { - "id": 109, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1628:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1620:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 110, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1639:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": true, - "functionSelector": "96426d97", - "id": 115, - "mutability": "constant", - "name": "timeBasedReward", - "nameLocation": "1696:15:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1672:46:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 113, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1672:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "35653137", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1714:4:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_500000000000000000_by_1", - "typeString": "int_const 500000000000000000" - }, - "value": "5e17" - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "6fd4f229", - "id": 119, - "mutability": "mutable", - "name": "timeOfLastNewValue", - "nameLocation": "1811:18:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1796:51:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 116, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1796:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "expression": { - "id": 117, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1832:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1832:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "69d43bd3", - "id": 121, - "mutability": "mutable", - "name": "tipsInContract", - "nameLocation": "1937:14:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1922:29:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 120, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1922:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "c6384071", - "id": 123, - "mutability": "mutable", - "name": "voteCount", - "nameLocation": "2010:9:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "1995:24:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 122, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1995:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 125, - "mutability": "mutable", - "name": "_totalSupply", - "nameLocation": "2041:12:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "2025:28:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 124, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2025:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 127, - "mutability": "mutable", - "name": "_name", - "nameLocation": "2074:5:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "2059:20:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 126, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2059:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 129, - "mutability": "mutable", - "name": "_symbol", - "nameLocation": "2100:7:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "2085:22:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 128, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2085:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 131, - "mutability": "mutable", - "name": "_decimals", - "nameLocation": "2127:9:0", - "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "2113:23:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 130, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "2113:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "private" - }, - { - "canonicalName": "TellorPlayground.StakeInfo", - "id": 142, - "members": [ - { - "constant": false, - "id": 133, - "mutability": "mutable", - "name": "startDate", - "nameLocation": "2193:9:0", - "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2185:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 132, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2185:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 135, - "mutability": "mutable", - "name": "stakedBalance", - "nameLocation": "2239:13:0", - "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2231:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 134, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2231:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 137, - "mutability": "mutable", - "name": "lockedBalance", - "nameLocation": "2288:13:0", - "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2280:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 136, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2280:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 139, - "mutability": "mutable", - "name": "reporterLastTimestamp", - "nameLocation": "2351:21:0", - "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2343:29:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 138, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2343:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 141, - "mutability": "mutable", - "name": "reportsSubmitted", - "nameLocation": "2437:16:0", - "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2429:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 140, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2429:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "StakeInfo", - "nameLocation": "2165:9:0", - "nodeType": "StructDefinition", - "scope": 1164, - "src": "2158:351:0", - "visibility": "public" - }, - { - "body": { - "id": 172, - "nodeType": "Block", - "src": "2608:203:0", - "statements": [ - { - "expression": { - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 146, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "2618:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "54656c6c6f72506c617967726f756e64", - "id": 147, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2626:18:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a51d9d55f81c1d139d00a35fe45d3274bad996badcbc04d6c9b409ab08c9ed24", - "typeString": "literal_string \"TellorPlayground\"" - }, - "value": "TellorPlayground" - }, - "src": "2618:26:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:26:0" - }, - { - "expression": { - "id": 152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 150, - "name": "_symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 129, - "src": "2654:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "54524250", - "id": 151, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2664:6:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d0a2c6180d1ed34252a94f0ebb2b60879dac0618c8b26c1bc5fe17abaafe1942", - "typeString": "literal_string \"TRBP\"" - }, - "value": "TRBP" - }, - "src": "2654:16:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 153, - "nodeType": "ExpressionStatement", - "src": "2654:16:0" - }, - { - "expression": { - "id": 156, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 154, - "name": "_decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "2680:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "3138", - "id": 155, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2692:2:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_18_by_1", - "typeString": "int_const 18" - }, - "value": "18" - }, - "src": "2680:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 157, - "nodeType": "ExpressionStatement", - "src": "2680:14:0" - }, - { - "expression": { - "id": 170, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 158, - "name": "addresses", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "2704:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 165, - "indexExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "5f474f5645524e414e43455f434f4e5452414354", - "id": 162, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2754:22:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93", - "typeString": "literal_string \"_GOVERNANCE_CONTRACT\"" - }, - "value": "_GOVERNANCE_CONTRACT" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93", - "typeString": "literal_string \"_GOVERNANCE_CONTRACT\"" - } - ], - "expression": { - "id": 160, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2737:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "2737:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 163, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2737:40:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 159, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "2727:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 164, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2727:51:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2704:84:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 168, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "2799:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 167, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2791:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 166, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2791:7:0", - "typeDescriptions": {} - } - }, - "id": 169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2791:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2704:100:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 171, - "nodeType": "ExpressionStatement", - "src": "2704:100:0" - } - ] - }, - "documentation": { - "id": 143, - "nodeType": "StructuredDocumentation", - "src": "2532:57:0", - "text": " @dev Initializes playground parameters" - }, - "id": 173, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 144, - "nodeType": "ParameterList", - "parameters": [], - "src": "2605:2:0" - }, - "returnParameters": { - "id": 145, - "nodeType": "ParameterList", - "parameters": [], - "src": "2608:0:0" - }, - "scope": 1164, - "src": "2594:217:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 192, - "nodeType": "Block", - "src": "3236:77:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 184, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3255:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3255:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 186, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 176, - "src": "3267:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 187, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 178, - "src": "3277:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 183, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "3246:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 188, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3246:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 189, - "nodeType": "ExpressionStatement", - "src": "3246:39:0" - }, - { - "expression": { - "hexValue": "74727565", - "id": 190, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3302:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 182, - "id": 191, - "nodeType": "Return", - "src": "3295:11:0" - } - ] - }, - "documentation": { - "id": 174, - "nodeType": "StructuredDocumentation", - "src": "2817:304:0", - "text": " @dev Approves amount that an address is alowed to spend of behalf of another\n @param _spender The address which is allowed to spend the tokens\n @param _amount The amount that msg.sender is allowing spender to use\n @return bool Whether the transaction succeeded" - }, - "functionSelector": "095ea7b3", - "id": 193, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "3135:7:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 179, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 176, - "mutability": "mutable", - "name": "_spender", - "nameLocation": "3151:8:0", - "nodeType": "VariableDeclaration", - "scope": 193, - "src": "3143:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 175, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3143:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 178, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "3169:7:0", - "nodeType": "VariableDeclaration", - "scope": 193, - "src": "3161:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 177, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3161:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3142:35:0" - }, - "returnParameters": { - "id": 182, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 181, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 193, - "src": "3226:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 180, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3226:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3225:6:0" - }, - "scope": 1164, - "src": "3126:187:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 236, - "nodeType": "Block", - "src": "3570:236:0", - "statements": [ - { - "expression": { - "id": 210, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 201, - "name": "values", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "3580:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" - } - }, - "id": 204, - "indexExpression": { - "id": 202, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "3587:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3580:16:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes storage ref)" - } - }, - "id": 205, - "indexExpression": { - "id": 203, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 198, - "src": "3597:10:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3580:28:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "hexValue": "", - "id": 208, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3617:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 207, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3611:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 206, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3611:5:0", - "typeDescriptions": {} - } - }, - "id": 209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3611:9:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "3580:40:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 211, - "nodeType": "ExpressionStatement", - "src": "3580:40:0" - }, - { - "expression": { - "id": 218, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 212, - "name": "isDisputed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 71, - "src": "3630:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bool_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bool))" - } - }, - "id": 215, - "indexExpression": { - "id": 213, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "3641:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3630:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", - "typeString": "mapping(uint256 => bool)" - } - }, - "id": 216, - "indexExpression": { - "id": 214, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 198, - "src": "3651:10:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3630:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 217, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3665:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "3630:39:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 219, - "nodeType": "ExpressionStatement", - "src": "3630:39:0" - }, - { - "expression": { - "id": 221, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "3679:11:0", - "subExpression": { - "id": 220, - "name": "voteCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "3679:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 222, - "nodeType": "ExpressionStatement", - "src": "3679:11:0" - }, - { - "expression": { - "arguments": [ - { - "id": 233, - "name": "voteCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "3780:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "baseExpression": { - "id": 223, - "name": "voteRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 102, - "src": "3700:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 231, - "indexExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 227, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "3738:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 228, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 198, - "src": "3748:10:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 225, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "3721:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 226, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "3721:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3721:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 224, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "3711:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3711:49:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3700:61:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "id": 232, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "3700:66:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_array$_t_uint256_$dyn_storage_ptr_$", - "typeString": "function (uint256[] storage pointer,uint256)" - } - }, - "id": 234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3700:99:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 235, - "nodeType": "ExpressionStatement", - "src": "3700:99:0" - } - ] - }, - "documentation": { - "id": 194, - "nodeType": "StructuredDocumentation", - "src": "3319:177:0", - "text": " @dev A mock function to create a dispute\n @param _queryId The tellorId to be disputed\n @param _timestamp the timestamp of the value to be disputed" - }, - "functionSelector": "1f379acc", - "id": 237, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "beginDispute", - "nameLocation": "3510:12:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 199, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 196, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "3531:8:0", - "nodeType": "VariableDeclaration", - "scope": 237, - "src": "3523:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 195, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3523:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 198, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "3549:10:0", - "nodeType": "VariableDeclaration", - "scope": 237, - "src": "3541:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 197, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3541:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3522:38:0" - }, - "returnParameters": { - "id": 200, - "nodeType": "ParameterList", - "parameters": [], - "src": "3570:0:0" - }, - "scope": 1164, - "src": "3501:305:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 248, - "nodeType": "Block", - "src": "3994:41:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 244, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 240, - "src": "4010:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "31303030", - "id": 245, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4017:10:0", - "subdenomination": "ether", - "typeDescriptions": { - "typeIdentifier": "t_rational_1000000000000000000000_by_1", - "typeString": "int_const 1000000000000000000000" - }, - "value": "1000" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_rational_1000000000000000000000_by_1", - "typeString": "int_const 1000000000000000000000" - } - ], - "id": 243, - "name": "_mint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "4004:5:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4004:24:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 247, - "nodeType": "ExpressionStatement", - "src": "4004:24:0" - } - ] - }, - "documentation": { - "id": 238, - "nodeType": "StructuredDocumentation", - "src": "3812:137:0", - "text": " @dev Public function to mint tokens to the given address\n @param _user The address which will receive the tokens" - }, - "functionSelector": "b86d1d63", - "id": 249, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "faucet", - "nameLocation": "3963:6:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 241, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 240, - "mutability": "mutable", - "name": "_user", - "nameLocation": "3978:5:0", - "nodeType": "VariableDeclaration", - "scope": 249, - "src": "3970:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 239, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3970:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3969:15:0" - }, - "returnParameters": { - "id": 242, - "nodeType": "ParameterList", - "parameters": [], - "src": "3994:0:0" - }, - "scope": 1164, - "src": "3954:81:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 382, - "nodeType": "Block", - "src": "4582:1117:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 267, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 262, - "name": "_nonce", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "4613:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 263, - "name": "timestamps", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "4623:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 265, - "indexExpression": { - "id": 264, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4634:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4623:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "id": 266, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "4623:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4613:37:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6e6f6e63652073686f756c6420626520636f7272656374", - "id": 268, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4664:25:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", - "typeString": "literal_string \"nonce should be correct\"" - }, - "value": "nonce should be correct" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", - "typeString": "literal_string \"nonce should be correct\"" - } - ], - "id": 261, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "4592:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 269, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4592:107:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 270, - "nodeType": "ExpressionStatement", - "src": "4592:107:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 283, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 276, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 272, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4730:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 274, - "name": "_queryData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 258, - "src": "4752:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 273, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "4742:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4742:21:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "4730:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 282, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 279, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4775:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 278, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4767:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 277, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4767:7:0", - "typeDescriptions": {} - } - }, - "id": 280, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4767:17:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "313030", - "id": 281, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4788:3:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "4767:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4730:61:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6964206d7573742062652068617368206f662062797465732064617461", - "id": 284, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4805:31:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", - "typeString": "literal_string \"id must be hash of bytes data\"" - }, - "value": "id must be hash of bytes data" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", - "typeString": "literal_string \"id must be hash of bytes data\"" - } - ], - "id": 271, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "4709:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 285, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4709:137:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 286, - "nodeType": "ExpressionStatement", - "src": "4709:137:0" - }, - { - "expression": { - "id": 294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 287, - "name": "values", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "4856:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" - } - }, - "id": 291, - "indexExpression": { - "id": 288, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4863:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4856:16:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes storage ref)" - } - }, - "id": 292, - "indexExpression": { - "expression": { - "id": 289, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "4873:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 290, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "4873:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "4856:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 293, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 254, - "src": "4892:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "src": "4856:42:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 295, - "nodeType": "ExpressionStatement", - "src": "4856:42:0" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 300, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "4934:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 301, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "4934:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "baseExpression": { - "id": 296, - "name": "timestamps", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "4908:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 298, - "indexExpression": { - "id": 297, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4919:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4908:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "id": 299, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "src": "4908:25:0", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_array$_t_uint256_$dyn_storage_ptr_$", - "typeString": "function (uint256[] storage pointer,uint256)" - } - }, - "id": 302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4908:42:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 303, - "nodeType": "ExpressionStatement", - "src": "4908:42:0" - }, - { - "assignments": [ - 305, - 307 - ], - "declarations": [ - { - "constant": false, - "id": 305, - "mutability": "mutable", - "name": "_tip", - "nameLocation": "5042:4:0", - "nodeType": "VariableDeclaration", - "scope": 382, - "src": "5034:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 304, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5034:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 307, - "mutability": "mutable", - "name": "_reward", - "nameLocation": "5056:7:0", - "nodeType": "VariableDeclaration", - "scope": 382, - "src": "5048:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 306, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5048:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 311, - "initialValue": { - "arguments": [ - { - "id": 309, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5084:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 308, - "name": "getCurrentReward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 850, - "src": "5067:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$_t_uint256_$", - "typeString": "function (bytes32) view returns (uint256,uint256)" - } - }, - "id": 310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5067:26:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5033:60:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 312, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 307, - "src": "5107:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 313, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5117:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5107:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5124:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5107:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 326, - "nodeType": "IfStatement", - "src": "5103:85:0", - "trueBody": { - "id": 325, - "nodeType": "Block", - "src": "5127:61:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 318, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5150:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5150:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 322, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 320, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 307, - "src": "5162:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 321, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5172:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5162:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 317, - "name": "transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "5141:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) returns (bool)" - } - }, - "id": 323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5141:36:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 324, - "nodeType": "ExpressionStatement", - "src": "5141:36:0" - } - ] - } - }, - { - "expression": { - "id": 330, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 327, - "name": "timeOfLastNewValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "5197:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 328, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "5218:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "5218:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5197:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 331, - "nodeType": "ExpressionStatement", - "src": "5197:36:0" - }, - { - "expression": { - "id": 334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 332, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5243:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 333, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5261:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5243:22:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 335, - "nodeType": "ExpressionStatement", - "src": "5243:22:0" - }, - { - "expression": { - "id": 340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 336, - "name": "tips", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "5275:4:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 338, - "indexExpression": { - "id": 337, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5280:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "5275:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5292:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5275:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 341, - "nodeType": "ExpressionStatement", - "src": "5275:18:0" - }, - { - "expression": { - "id": 350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 342, - "name": "reporterByTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "5303:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => address))" - } - }, - "id": 346, - "indexExpression": { - "id": 343, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5323:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5303:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 347, - "indexExpression": { - "expression": { - "id": 344, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "5333:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 345, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "5333:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "5303:46:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 348, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5352:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5352:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "5303:59:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 351, - "nodeType": "ExpressionStatement", - "src": "5303:59:0" - }, - { - "expression": { - "id": 359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 352, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "5372:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 355, - "indexExpression": { - "expression": { - "id": 353, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5386:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5386:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5372:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 356, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "reporterLastTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 139, - "src": "5372:47:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 357, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "5422:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 358, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "5422:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5372:65:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 360, - "nodeType": "ExpressionStatement", - "src": "5372:65:0" - }, - { - "expression": { - "id": 366, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "5447:44:0", - "subExpression": { - "expression": { - "baseExpression": { - "id": 361, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "5447:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 364, - "indexExpression": { - "expression": { - "id": 362, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5461:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 363, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5461:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5447:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 365, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "reportsSubmitted", - "nodeType": "MemberAccess", - "referencedDeclaration": 141, - "src": "5447:42:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 367, - "nodeType": "ExpressionStatement", - "src": "5447:44:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 369, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5529:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 370, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "5551:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "5551:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 372, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 254, - "src": "5580:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 373, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5600:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 374, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 307, - "src": "5607:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5600:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 376, - "name": "_nonce", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "5628:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 377, - "name": "_queryData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 258, - "src": "5648:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 378, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5672:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5672:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 368, - "name": "NewReport", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "5506:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (bytes32,uint256,bytes memory,uint256,uint256,bytes memory,address)" - } - }, - "id": 380, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5506:186:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 381, - "nodeType": "EmitStatement", - "src": "5501:191:0" - } - ] - }, - "documentation": { - "id": 250, - "nodeType": "StructuredDocumentation", - "src": "4041:343:0", - "text": " @dev A mock function to submit a value to be read without reporter staking needed\n @param _queryId the ID to associate the value to\n @param _value the value for the queryId\n @param _nonce the current value count for the query id\n @param _queryData the data used by reporters to fulfill the data query" - }, - "functionSelector": "5eaa9ced", - "id": 383, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "submitValue", - "nameLocation": "4441:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 259, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 252, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "4470:8:0", - "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4462:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 251, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4462:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 254, - "mutability": "mutable", - "name": "_value", - "nameLocation": "4503:6:0", - "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4488:21:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 253, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4488:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 256, - "mutability": "mutable", - "name": "_nonce", - "nameLocation": "4527:6:0", - "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4519:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 255, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4519:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 258, - "mutability": "mutable", - "name": "_queryData", - "nameLocation": "4556:10:0", - "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4543:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 257, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4543:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4452:120:0" - }, - "returnParameters": { - "id": 260, - "nodeType": "ParameterList", - "parameters": [], - "src": "4582:0:0" - }, - "scope": 1164, - "src": "4432:1267:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 454, - "nodeType": "Block", - "src": "6054:501:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 398, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 394, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6085:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 396, - "name": "_queryData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "6107:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 395, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "6097:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6097:21:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "6085:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 404, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 401, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6130:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 400, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6122:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 399, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6122:7:0", - "typeDescriptions": {} - } - }, - "id": 402, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6122:17:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "313030", - "id": 403, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6143:3:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "6122:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6085:61:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "6964206d7573742062652068617368206f662062797465732064617461", - "id": 406, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6160:31:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", - "typeString": "literal_string \"id must be hash of bytes data\"" - }, - "value": "id must be hash of bytes data" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", - "typeString": "literal_string \"id must be hash of bytes data\"" - } - ], - "id": 393, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "6064:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 407, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6064:137:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 408, - "nodeType": "ExpressionStatement", - "src": "6064:137:0" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 410, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "6221:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "6221:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 414, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "6241:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 413, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6233:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 412, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6233:7:0", - "typeDescriptions": {} - } - }, - "id": 415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6233:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 416, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6248:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 409, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "6211:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6211:45:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 418, - "nodeType": "ExpressionStatement", - "src": "6211:45:0" - }, - { - "expression": { - "id": 423, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 419, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6266:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 420, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6276:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 421, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6286:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "6276:11:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6266:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 424, - "nodeType": "ExpressionStatement", - "src": "6266:21:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 428, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "6311:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 427, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6303:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 426, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6303:7:0", - "typeDescriptions": {} - } - }, - "id": 429, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6303:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 430, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6318:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 425, - "name": "_burn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1039, - "src": "6297:5:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 431, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6297:29:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 432, - "nodeType": "ExpressionStatement", - "src": "6297:29:0" - }, - { - "expression": { - "id": 435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 433, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "6336:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 434, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6354:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6336:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 436, - "nodeType": "ExpressionStatement", - "src": "6336:25:0" - }, - { - "expression": { - "id": 441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 437, - "name": "tips", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "6371:4:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 439, - "indexExpression": { - "id": 438, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6376:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6371:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 440, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6389:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6371:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 442, - "nodeType": "ExpressionStatement", - "src": "6371:25:0" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 444, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "6433:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 445, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "6433:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 446, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6457:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 447, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6479:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 448, - "name": "tips", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "6500:4:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 450, - "indexExpression": { - "id": 449, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6505:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6500:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 451, - "name": "_queryData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "6528:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 443, - "name": "TipAdded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 43, - "src": "6411:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,bytes32,uint256,uint256,bytes memory)" - } - }, - "id": 452, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6411:137:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 453, - "nodeType": "EmitStatement", - "src": "6406:142:0" - } - ] - }, - "documentation": { - "id": 384, - "nodeType": "StructuredDocumentation", - "src": "5705:227:0", - "text": " @dev Adds a tip to a given query ID.\n @param _queryId is the queryId to look up\n @param _amount is the amount of tips\n @param _queryData is the extra bytes data needed to fulfill the request" - }, - "functionSelector": "ef0234ad", - "id": 455, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "tipQuery", - "nameLocation": "5946:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 391, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 386, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5972:8:0", - "nodeType": "VariableDeclaration", - "scope": 455, - "src": "5964:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 385, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5964:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 388, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "5998:7:0", - "nodeType": "VariableDeclaration", - "scope": 455, - "src": "5990:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 387, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5990:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 390, - "mutability": "mutable", - "name": "_queryData", - "nameLocation": "6028:10:0", - "nodeType": "VariableDeclaration", - "scope": 455, - "src": "6015:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 389, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6015:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5954:90:0" - }, - "returnParameters": { - "id": 392, - "nodeType": "ParameterList", - "parameters": [], - "src": "6054:0:0" - }, - "scope": 1164, - "src": "5937:618:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 474, - "nodeType": "Block", - "src": "6914:80:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 466, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "6934:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "6934:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 468, - "name": "_recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "6946:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 469, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6958:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 465, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "6924:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6924:42:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 471, - "nodeType": "ExpressionStatement", - "src": "6924:42:0" - }, - { - "expression": { - "hexValue": "74727565", - "id": 472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6983:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 464, - "id": 473, - "nodeType": "Return", - "src": "6976:11:0" - } - ] - }, - "documentation": { - "id": 456, - "nodeType": "StructuredDocumentation", - "src": "6561:235:0", - "text": " @dev Transfer tokens from one user to another\n @param _recipient The destination address\n @param _amount The amount of tokens, including decimals, to transfer\n @return bool If the transfer succeeded" - }, - "functionSelector": "a9059cbb", - "id": 475, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nameLocation": "6810:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 461, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 458, - "mutability": "mutable", - "name": "_recipient", - "nameLocation": "6827:10:0", - "nodeType": "VariableDeclaration", - "scope": 475, - "src": "6819:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 457, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6819:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 460, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "6847:7:0", - "nodeType": "VariableDeclaration", - "scope": 475, - "src": "6839:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 459, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6839:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6818:37:0" - }, - "returnParameters": { - "id": 464, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 463, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 475, - "src": "6904:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 462, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6904:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6903:6:0" - }, - "scope": 1164, - "src": "6801:193:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 509, - "nodeType": "Block", - "src": "7414:206:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 488, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 478, - "src": "7434:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 489, - "name": "_recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 480, - "src": "7443:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 490, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 482, - "src": "7455:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 487, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "7424:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7424:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 492, - "nodeType": "ExpressionStatement", - "src": "7424:39:0" - }, - { - "expression": { - "arguments": [ - { - "id": 494, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 478, - "src": "7495:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 495, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "7516:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7516:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 504, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "baseExpression": { - "id": 497, - "name": "_allowances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "7540:11:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 499, - "indexExpression": { - "id": 498, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 478, - "src": "7552:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7540:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 502, - "indexExpression": { - "expression": { - "id": 500, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "7561:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7561:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7540:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 503, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 482, - "src": "7575:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7540:42:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 493, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "7473:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 505, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7473:119:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 506, - "nodeType": "ExpressionStatement", - "src": "7473:119:0" - }, - { - "expression": { - "hexValue": "74727565", - "id": 507, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7609:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 486, - "id": 508, - "nodeType": "Return", - "src": "7602:11:0" - } - ] - }, - "documentation": { - "id": 476, - "nodeType": "StructuredDocumentation", - "src": "7000:273:0", - "text": " @dev Transfer tokens from user to another\n @param _sender The address which owns the tokens\n @param _recipient The destination address\n @param _amount The quantity of tokens to transfer\n @return bool Whether the transfer succeeded" - }, - "functionSelector": "23b872dd", - "id": 510, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "7287:12:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 483, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 478, - "mutability": "mutable", - "name": "_sender", - "nameLocation": "7317:7:0", - "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7309:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 477, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7309:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 480, - "mutability": "mutable", - "name": "_recipient", - "nameLocation": "7342:10:0", - "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7334:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 479, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7334:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 482, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "7370:7:0", - "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7362:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 481, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7362:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7299:84:0" - }, - "returnParameters": { - "id": 486, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 485, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7408:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 484, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7408:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7407:6:0" - }, - "scope": 1164, - "src": "7278:342:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 596, - "nodeType": "Block", - "src": "7803:799:0", - "statements": [ - { - "assignments": [ - 518 - ], - "declarations": [ - { - "constant": false, - "id": 518, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "7831:7:0", - "nodeType": "VariableDeclaration", - "scope": 596, - "src": "7813:25:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - }, - "typeName": { - "id": 517, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 516, - "name": "StakeInfo", - "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "7813:9:0" - }, - "referencedDeclaration": 142, - "src": "7813:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - } - }, - "visibility": "internal" - } - ], - "id": 523, - "initialValue": { - "baseExpression": { - "id": 519, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "7841:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 522, - "indexExpression": { - "expression": { - "id": 520, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "7855:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 521, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7855:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7841:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7813:53:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 527, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 524, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "7880:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 525, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "7880:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 526, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7904:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7880:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 575, - "nodeType": "Block", - "src": "8336:83:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 565, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "8372:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8372:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 569, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "8392:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 568, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8384:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 567, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8384:7:0", - "typeDescriptions": {} - } - }, - "id": 570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8384:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 571, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8399:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 564, - "name": "_transferFrom", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1163, - "src": "8358:13:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) returns (bool)" - } - }, - "id": 572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8358:49:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 563, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "8350:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 573, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8350:58:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 574, - "nodeType": "ExpressionStatement", - "src": "8350:58:0" - } - ] - }, - "id": 576, - "nodeType": "IfStatement", - "src": "7876:543:0", - "trueBody": { - "id": 562, - "nodeType": "Block", - "src": "7907:423:0", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 531, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 528, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "7925:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 529, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "7925:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 530, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "7950:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7925:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 560, - "nodeType": "Block", - "src": "8030:290:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 541, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "8116:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 542, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8116:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 545, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "8160:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 544, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8152:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 543, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8152:7:0", - "typeDescriptions": {} - } - }, - "id": 546, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8152:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 550, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 547, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8191:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "expression": { - "id": 548, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8201:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 549, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "8201:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8191:31:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 540, - "name": "_transferFrom", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1163, - "src": "8077:13:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) returns (bool)" - } - }, - "id": 551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8077:167:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 539, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "8048:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 552, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8048:214:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 553, - "nodeType": "ExpressionStatement", - "src": "8048:214:0" - }, - { - "expression": { - "id": 558, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 554, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8280:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 556, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "8280:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 557, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8304:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8280:25:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 559, - "nodeType": "ExpressionStatement", - "src": "8280:25:0" - } - ] - }, - "id": 561, - "nodeType": "IfStatement", - "src": "7921:399:0", - "trueBody": { - "id": 538, - "nodeType": "Block", - "src": "7959:65:0", - "statements": [ - { - "expression": { - "id": 536, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 532, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "7977:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 534, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "7977:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 535, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8002:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7977:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 537, - "nodeType": "ExpressionStatement", - "src": "7977:32:0" - } - ] - } - } - ] - } - }, - { - "expression": { - "id": 582, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 577, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8428:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 579, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "startDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "8428:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 580, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "8448:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "8448:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8428:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 583, - "nodeType": "ExpressionStatement", - "src": "8428:35:0" - }, - { - "expression": { - "id": 588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 584, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8518:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 586, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "stakedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "8518:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 587, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8543:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8518:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 589, - "nodeType": "ExpressionStatement", - "src": "8518:32:0" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 591, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "8575:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8575:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 593, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8587:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 590, - "name": "NewStaker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "8565:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8565:30:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 595, - "nodeType": "EmitStatement", - "src": "8560:35:0" - } - ] - }, - "documentation": { - "id": 511, - "nodeType": "StructuredDocumentation", - "src": "7645:105:0", - "text": " @dev Allows a reporter to submit stake\n @param _amount amount of tokens to stake" - }, - "functionSelector": "cb82cc8f", - "id": 597, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "depositStake", - "nameLocation": "7764:12:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 514, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 513, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "7785:7:0", - "nodeType": "VariableDeclaration", - "scope": 597, - "src": "7777:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 512, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7777:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7776:17:0" - }, - "returnParameters": { - "id": 515, - "nodeType": "ParameterList", - "parameters": [], - "src": "7803:0:0" - }, - "scope": 1164, - "src": "7755:847:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 644, - "nodeType": "Block", - "src": "8816:373:0", - "statements": [ - { - "assignments": [ - 605 - ], - "declarations": [ - { - "constant": false, - "id": 605, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "8844:7:0", - "nodeType": "VariableDeclaration", - "scope": 644, - "src": "8826:25:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - }, - "typeName": { - "id": 604, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 603, - "name": "StakeInfo", - "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "8826:9:0" - }, - "referencedDeclaration": 142, - "src": "8826:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - } - }, - "visibility": "internal" - } - ], - "id": 610, - "initialValue": { - "baseExpression": { - "id": 606, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "8854:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 609, - "indexExpression": { - "expression": { - "id": 607, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "8868:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 608, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8868:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8854:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8826:53:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 612, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "8910:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 613, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "stakedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "8910:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 614, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "8935:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8910:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "696e73756666696369656e74207374616b65642062616c616e6365", - "id": 616, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8956:29:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db", - "typeString": "literal_string \"insufficient staked balance\"" - }, - "value": "insufficient staked balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db", - "typeString": "literal_string \"insufficient staked balance\"" - } - ], - "id": 611, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "8889:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8889:106:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 618, - "nodeType": "ExpressionStatement", - "src": "8889:106:0" - }, - { - "expression": { - "id": 624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 619, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "9005:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 621, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "startDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "9005:17:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 622, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "9025:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "9025:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9005:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 625, - "nodeType": "ExpressionStatement", - "src": "9005:35:0" - }, - { - "expression": { - "id": 630, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 626, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "9050:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 628, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9050:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 629, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "9075:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9050:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 631, - "nodeType": "ExpressionStatement", - "src": "9050:32:0" - }, - { - "expression": { - "id": 636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 632, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "9092:7:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 634, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "stakedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "9092:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 635, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "9117:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9092:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 637, - "nodeType": "ExpressionStatement", - "src": "9092:32:0" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 639, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "9162:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9162:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 641, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "9174:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 638, - "name": "StakeWithdrawRequested", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 49, - "src": "9139:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9139:43:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 643, - "nodeType": "EmitStatement", - "src": "9134:48:0" - } - ] - }, - "documentation": { - "id": 598, - "nodeType": "StructuredDocumentation", - "src": "8608:145:0", - "text": " @dev Allows a reporter to request to withdraw their stake\n @param _amount amount of staked tokens requesting to withdraw" - }, - "functionSelector": "8929f4c6", - "id": 645, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "requestStakingWithdraw", - "nameLocation": "8767:22:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 601, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 600, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "8798:7:0", - "nodeType": "VariableDeclaration", - "scope": 645, - "src": "8790:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 599, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8790:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8789:17:0" - }, - "returnParameters": { - "id": 602, - "nodeType": "ParameterList", - "parameters": [], - "src": "8816:0:0" - }, - "scope": 1164, - "src": "8758:431:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 698, - "nodeType": "Block", - "src": "9286:427:0", - "statements": [ - { - "assignments": [ - 651 - ], - "declarations": [ - { - "constant": false, - "id": 651, - "mutability": "mutable", - "name": "_s", - "nameLocation": "9314:2:0", - "nodeType": "VariableDeclaration", - "scope": 698, - "src": "9296:20:0", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - }, - "typeName": { - "id": 650, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 649, - "name": "StakeInfo", - "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "9296:9:0" - }, - "referencedDeclaration": 142, - "src": "9296:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo" - } - }, - "visibility": "internal" - } - ], - "id": 656, - "initialValue": { - "baseExpression": { - "id": 652, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "9319:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 655, - "indexExpression": { - "expression": { - "id": 653, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "9333:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 654, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9333:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9319:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9296:48:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 664, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 662, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 658, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "9431:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "9431:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "expression": { - "id": 660, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9449:2:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 661, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "startDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "9449:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9431:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "37", - "id": 663, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9465:6:0", - "subdenomination": "days", - "typeDescriptions": { - "typeIdentifier": "t_rational_604800_by_1", - "typeString": "int_const 604800" - }, - "value": "7" - }, - "src": "9431:40:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "372064617973206469646e27742070617373", - "id": 665, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9473:20:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790", - "typeString": "literal_string \"7 days didn't pass\"" - }, - "value": "7 days didn't pass" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790", - "typeString": "literal_string \"7 days didn't pass\"" - } - ], - "id": 657, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "9423:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 666, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9423:71:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 667, - "nodeType": "ExpressionStatement", - "src": "9423:71:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 672, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 669, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9512:2:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 670, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9512:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 671, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9531:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "9512:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "7265706f72746572206e6f74206c6f636b656420666f72207769746864726177616c", - "id": 673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9534:36:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774", - "typeString": "literal_string \"reporter not locked for withdrawal\"" - }, - "value": "reporter not locked for withdrawal" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774", - "typeString": "literal_string \"reporter not locked for withdrawal\"" - } - ], - "id": 668, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "9504:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 674, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9504:67:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 675, - "nodeType": "ExpressionStatement", - "src": "9504:67:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 679, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "9599:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 678, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9591:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 677, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9591:7:0", - "typeDescriptions": {} - } - }, - "id": 680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9591:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 681, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "9606:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9606:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 683, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9618:2:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 684, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9618:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 676, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "9581:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 685, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9581:54:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 686, - "nodeType": "ExpressionStatement", - "src": "9581:54:0" - }, - { - "expression": { - "id": 691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 687, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9645:2:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", - "typeString": "struct TellorPlayground.StakeInfo storage pointer" - } - }, - "id": 689, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9645:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 690, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9664:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "9645:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 692, - "nodeType": "ExpressionStatement", - "src": "9645:20:0" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 694, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "9695:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9695:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 693, - "name": "StakeWithdrawn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 53, - "src": "9680:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9680:26:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 697, - "nodeType": "EmitStatement", - "src": "9675:31:0" - } - ] - }, - "documentation": { - "id": 646, - "nodeType": "StructuredDocumentation", - "src": "9195:52:0", - "text": " @dev Withdraws a reporter's stake" - }, - "functionSelector": "bed9d861", - "id": 699, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "withdrawStake", - "nameLocation": "9261:13:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 647, - "nodeType": "ParameterList", - "parameters": [], - "src": "9274:2:0" - }, - "returnParameters": { - "id": 648, - "nodeType": "ParameterList", - "parameters": [], - "src": "9286:0:0" - }, - "scope": 1164, - "src": "9252:461:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 715, - "nodeType": "Block", - "src": "10079:65:0", - "statements": [ - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 709, - "name": "reporterByTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "10096:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => address))" - } - }, - "id": 711, - "indexExpression": { - "id": 710, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "10116:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10096:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 713, - "indexExpression": { - "id": 712, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 704, - "src": "10126:10:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10096:41:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 708, - "id": 714, - "nodeType": "Return", - "src": "10089:48:0" - } - ] - }, - "documentation": { - "id": 700, - "nodeType": "StructuredDocumentation", - "src": "9719:225:0", - "text": " @dev Returns the reporter for a given timestamp and queryId\n @param _queryId bytes32 version of the queryId\n @param _timestamp uint256 timestamp of report\n @return address of data reporter" - }, - "functionSelector": "e07c5486", - "id": 716, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getReporterByTimestamp", - "nameLocation": "9958:22:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 705, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 702, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "9989:8:0", - "nodeType": "VariableDeclaration", - "scope": 716, - "src": "9981:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 701, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "9981:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 704, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "10007:10:0", - "nodeType": "VariableDeclaration", - "scope": 716, - "src": "9999:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 703, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9999:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "9980:38:0" - }, - "returnParameters": { - "id": 708, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 707, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 716, - "src": "10066:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 706, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10066:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "10065:9:0" - }, - "scope": 1164, - "src": "9949:195:0", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 754, - "nodeType": "Block", - "src": "10757:291:0", - "statements": [ - { - "expression": { - "components": [ - { - "expression": { - "baseExpression": { - "id": 732, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10788:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 734, - "indexExpression": { - "id": 733, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10802:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10788:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 735, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "startDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "10788:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "baseExpression": { - "id": 736, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10834:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 738, - "indexExpression": { - "id": 737, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10848:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10834:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 739, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "stakedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "10834:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "baseExpression": { - "id": 740, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10884:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 742, - "indexExpression": { - "id": 741, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10898:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10884:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 743, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "lockedBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "10884:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "baseExpression": { - "id": 744, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10934:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 746, - "indexExpression": { - "id": 745, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10948:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10934:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 747, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "reporterLastTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 139, - "src": "10934:44:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "baseExpression": { - "id": 748, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10992:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 750, - "indexExpression": { - "id": 749, - "name": "_staker", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "11006:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10992:22:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 751, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "reportsSubmitted", - "nodeType": "MemberAccess", - "referencedDeclaration": 141, - "src": "10992:39:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 752, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "10774:267:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)" - } - }, - "functionReturnParameters": 731, - "id": 753, - "nodeType": "Return", - "src": "10767:274:0" - } - ] - }, - "documentation": { - "id": 717, - "nodeType": "StructuredDocumentation", - "src": "10150:396:0", - "text": " @dev Allows users to retrieve all information about a staker\n @param _staker address of staker inquiring about\n @return uint startDate of staking\n @return uint current amount staked\n @return uint current amount locked for withdrawal\n @return uint reporter's last reported timestamp\n @return uint total number of reports submitted by reporter" - }, - "functionSelector": "733bdef0", - "id": 755, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getStakerInfo", - "nameLocation": "10560:13:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 720, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 719, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "10582:7:0", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10574:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 718, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10574:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "10573:17:0" - }, - "returnParameters": { - "id": 731, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 722, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10651:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 721, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10651:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 724, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10672:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 723, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10672:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 726, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10693:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 725, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10693:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 728, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10714:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 727, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10714:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 730, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10735:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 729, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10735:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "10637:115:0" - }, - "scope": 1164, - "src": "10551:497:0", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 771, - "nodeType": "Block", - "src": "11466:53:0", - "statements": [ - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 765, - "name": "_allowances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "11483:11:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 767, - "indexExpression": { - "id": 766, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 758, - "src": "11495:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11483:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 769, - "indexExpression": { - "id": 768, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 760, - "src": "11503:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11483:29:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 764, - "id": 770, - "nodeType": "Return", - "src": "11476:36:0" - } - ] - }, - "documentation": { - "id": 756, - "nodeType": "StructuredDocumentation", - "src": "11069:265:0", - "text": " @dev Returns the amount that an address is alowed to spend of behalf of another\n @param _owner The address which owns the tokens\n @param _spender The address that will use the tokens\n @return uint256 The amount of allowed tokens" - }, - "functionSelector": "dd62ed3e", - "id": 772, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "allowance", - "nameLocation": "11348:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 761, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 758, - "mutability": "mutable", - "name": "_owner", - "nameLocation": "11366:6:0", - "nodeType": "VariableDeclaration", - "scope": 772, - "src": "11358:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 757, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11358:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 760, - "mutability": "mutable", - "name": "_spender", - "nameLocation": "11382:8:0", - "nodeType": "VariableDeclaration", - "scope": 772, - "src": "11374:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 759, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11374:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "11357:34:0" - }, - "returnParameters": { - "id": 764, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 763, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 772, - "src": "11453:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 762, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11453:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "11452:9:0" - }, - "scope": 1164, - "src": "11339:180:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 784, - "nodeType": "Block", - "src": "11737:43:0", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 780, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "11754:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 782, - "indexExpression": { - "id": 781, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "11764:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11754:19:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 779, - "id": 783, - "nodeType": "Return", - "src": "11747:26:0" - } - ] - }, - "documentation": { - "id": 773, - "nodeType": "StructuredDocumentation", - "src": "11525:140:0", - "text": " @dev Returns the balance of a given user.\n @param _account user address\n @return uint256 user's token balance" - }, - "functionSelector": "70a08231", - "id": 785, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "11679:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 776, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 775, - "mutability": "mutable", - "name": "_account", - "nameLocation": "11697:8:0", - "nodeType": "VariableDeclaration", - "scope": 785, - "src": "11689:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 774, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11689:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "11688:18:0" - }, - "returnParameters": { - "id": 779, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 778, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 785, - "src": "11728:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 777, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11728:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "11727:9:0" - }, - "scope": 1164, - "src": "11670:110:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 793, - "nodeType": "Block", - "src": "12006:33:0", - "statements": [ - { - "expression": { - "id": 791, - "name": "_decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "12023:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "functionReturnParameters": 790, - "id": 792, - "nodeType": "Return", - "src": "12016:16:0" - } - ] - }, - "documentation": { - "id": 786, - "nodeType": "StructuredDocumentation", - "src": "11786:167:0", - "text": " @dev Returns the number of decimals used to get its user representation.\n @return uint8 the number of decimals; used only for display purposes" - }, - "functionSelector": "313ce567", - "id": 794, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decimals", - "nameLocation": "11967:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 787, - "nodeType": "ParameterList", - "parameters": [], - "src": "11975:2:0" - }, - "returnParameters": { - "id": 790, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 789, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 794, - "src": "11999:5:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 788, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "11999:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "11998:7:0" - }, - "scope": 1164, - "src": "11958:81:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 849, - "nodeType": "Block", - "src": "12454:377:0", - "statements": [ - { - "assignments": [ - 805 - ], - "declarations": [ - { - "constant": false, - "id": 805, - "mutability": "mutable", - "name": "_timeDiff", - "nameLocation": "12472:9:0", - "nodeType": "VariableDeclaration", - "scope": 849, - "src": "12464:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 804, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12464:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 810, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 806, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "12484:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "12484:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 808, - "name": "timeOfLastNewValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "12502:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12484:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12464:56:0" - }, - { - "assignments": [ - 812 - ], - "declarations": [ - { - "constant": false, - "id": 812, - "mutability": "mutable", - "name": "_reward", - "nameLocation": "12538:7:0", - "nodeType": "VariableDeclaration", - "scope": 849, - "src": "12530:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 811, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12530:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 819, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 818, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 815, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 813, - "name": "_timeDiff", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 805, - "src": "12549:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 814, - "name": "timeBasedReward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 115, - "src": "12561:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12549:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 816, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12548:29:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "333030", - "id": 817, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12580:3:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "src": "12548:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12530:53:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 823, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "12672:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 822, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12664:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 821, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12664:7:0", - "typeDescriptions": {} - } - }, - "id": 824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12664:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 820, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12654:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view returns (uint256)" - } - }, - "id": 825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12654:24:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 828, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 826, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "12681:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 827, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "12691:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12681:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12654:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 842, - "nodeType": "IfStatement", - "src": "12650:133:0", - "trueBody": { - "id": 841, - "nodeType": "Block", - "src": "12707:76:0", - "statements": [ - { - "expression": { - "id": 839, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 830, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "12721:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 834, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "12749:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12741:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 832, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12741:7:0", - "typeDescriptions": {} - } - }, - "id": 835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12741:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 831, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12731:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view returns (uint256)" - } - }, - "id": 836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12731:24:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 837, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "12758:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12731:41:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12721:51:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 840, - "nodeType": "ExpressionStatement", - "src": "12721:51:0" - } - ] - } - }, - { - "expression": { - "components": [ - { - "baseExpression": { - "id": 843, - "name": "tips", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "12800:4:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 845, - "indexExpression": { - "id": 844, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 797, - "src": "12805:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12800:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 846, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "12816:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 847, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12799:25:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256)" - } - }, - "functionReturnParameters": 803, - "id": 848, - "nodeType": "Return", - "src": "12792:32:0" - } - ] - }, - "documentation": { - "id": 795, - "nodeType": "StructuredDocumentation", - "src": "12045:250:0", - "text": " @dev Calculates the current reward for a reporter given tips and time based reward\n @param _queryId is ID of the specific data feed\n @return uint256 tip amount for given query ID\n @return uint256 time based reward" - }, - "functionSelector": "a1e588a5", - "id": 850, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCurrentReward", - "nameLocation": "12352:16:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 798, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 797, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "12377:8:0", - "nodeType": "VariableDeclaration", - "scope": 850, - "src": "12369:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 796, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "12369:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "12368:18:0" - }, - "returnParameters": { - "id": 803, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 800, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 850, - "src": "12432:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 799, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12432:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 802, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 850, - "src": "12441:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 801, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12441:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12431:18:0" - }, - "scope": 1164, - "src": "12343:488:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 863, - "nodeType": "Block", - "src": "13163:51:0", - "statements": [ - { - "expression": { - "expression": { - "baseExpression": { - "id": 858, - "name": "timestamps", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "13180:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 860, - "indexExpression": { - "id": 859, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "13191:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13180:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "id": 861, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "13180:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 857, - "id": 862, - "nodeType": "Return", - "src": "13173:34:0" - } - ] - }, - "documentation": { - "id": 851, - "nodeType": "StructuredDocumentation", - "src": "12837:210:0", - "text": " @dev Counts the number of values that have been submitted for a given ID\n @param _queryId the ID to look up\n @return uint256 count of the number of values received for the queryId" - }, - "functionSelector": "77b03e0d", - "id": 864, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getNewValueCountbyQueryId", - "nameLocation": "13061:25:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 854, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 853, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "13095:8:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "13087:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 852, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13087:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "13086:18:0" - }, - "returnParameters": { - "id": 857, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 856, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "13150:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 855, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13150:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13149:9:0" - }, - "scope": 1164, - "src": "13052:162:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 897, - "nodeType": "Block", - "src": "13566:152:0", - "statements": [ - { - "assignments": [ - 875 - ], - "declarations": [ - { - "constant": false, - "id": 875, - "mutability": "mutable", - "name": "len", - "nameLocation": "13584:3:0", - "nodeType": "VariableDeclaration", - "scope": 897, - "src": "13576:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 874, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13576:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 880, - "initialValue": { - "expression": { - "baseExpression": { - "id": 876, - "name": "timestamps", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "13590:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 878, - "indexExpression": { - "id": 877, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "13601:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13590:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "id": 879, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "13590:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13576:41:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 887, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 883, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 881, - "name": "len", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 875, - "src": "13631:3:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 882, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13638:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13631:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 886, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 884, - "name": "len", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 875, - "src": "13643:3:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 885, - "name": "_index", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "13650:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13643:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "13631:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 890, - "nodeType": "IfStatement", - "src": "13627:39:0", - "trueBody": { - "expression": { - "hexValue": "30", - "id": 888, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13665:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "functionReturnParameters": 873, - "id": 889, - "nodeType": "Return", - "src": "13658:8:0" - } - }, - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 891, - "name": "timestamps", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "13683:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 893, - "indexExpression": { - "id": 892, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "13694:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13683:20:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "id": 895, - "indexExpression": { - "id": 894, - "name": "_index", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "13704:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13683:28:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 873, - "id": 896, - "nodeType": "Return", - "src": "13676:35:0" - } - ] - }, - "documentation": { - "id": 865, - "nodeType": "StructuredDocumentation", - "src": "13220:210:0", - "text": " @dev Gets the timestamp for the value based on their index\n @param _queryId is the queryId to look up\n @param _index is the value index to look up\n @return uint256 timestamp" - }, - "functionSelector": "ce5e11bf", - "id": 898, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getTimestampbyQueryIdandIndex", - "nameLocation": "13444:29:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 870, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 867, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "13482:8:0", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "13474:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 866, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13474:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 869, - "mutability": "mutable", - "name": "_index", - "nameLocation": "13500:6:0", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "13492:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 868, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13492:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13473:34:0" - }, - "returnParameters": { - "id": 873, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 872, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "13553:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 871, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13553:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13552:9:0" - }, - "scope": 1164, - "src": "13435:283:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 911, - "nodeType": "Block", - "src": "14025:41:0", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 907, - "name": "voteRounds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 102, - "src": "14042:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 909, - "indexExpression": { - "id": 908, - "name": "_hash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 901, - "src": "14053:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14042:17:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" - } - }, - "functionReturnParameters": 906, - "id": 910, - "nodeType": "Return", - "src": "14035:24:0" - } - ] - }, - "documentation": { - "id": 899, - "nodeType": "StructuredDocumentation", - "src": "13724:191:0", - "text": " @dev Returns an array of voting rounds for a given vote\n @param _hash is the identifier hash for a vote\n @return uint256[] memory dispute IDs of the vote rounds" - }, - "functionSelector": "248638e5", - "id": 912, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getVoteRounds", - "nameLocation": "13929:13:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 902, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 901, - "mutability": "mutable", - "name": "_hash", - "nameLocation": "13951:5:0", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "13943:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 900, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13943:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "13942:15:0" - }, - "returnParameters": { - "id": 906, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 905, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "14003:16:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 903, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14003:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 904, - "nodeType": "ArrayTypeName", - "src": "14003:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "14002:18:0" - }, - "scope": 1164, - "src": "13920:146:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 920, - "nodeType": "Block", - "src": "14223:29:0", - "statements": [ - { - "expression": { - "id": 918, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "14240:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 917, - "id": 919, - "nodeType": "Return", - "src": "14233:12:0" - } - ] - }, - "documentation": { - "id": 913, - "nodeType": "StructuredDocumentation", - "src": "14072:94:0", - "text": " @dev Returns the name of the token.\n @return string name of the token" - }, - "functionSelector": "06fdde03", - "id": 921, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "name", - "nameLocation": "14180:4:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 914, - "nodeType": "ParameterList", - "parameters": [], - "src": "14184:2:0" - }, - "returnParameters": { - "id": 917, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 916, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 921, - "src": "14208:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 915, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "14208:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "14207:15:0" - }, - "scope": 1164, - "src": "14171:81:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 937, - "nodeType": "Block", - "src": "14615:52:0", - "statements": [ - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 931, - "name": "values", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "14632:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" - } - }, - "id": 933, - "indexExpression": { - "id": 932, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 924, - "src": "14639:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14632:16:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes storage ref)" - } - }, - "id": 935, - "indexExpression": { - "id": 934, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "14649:10:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14632:28:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "functionReturnParameters": 930, - "id": 936, - "nodeType": "Return", - "src": "14625:35:0" - } - ] - }, - "documentation": { - "id": 922, - "nodeType": "StructuredDocumentation", - "src": "14258:229:0", - "text": " @dev Retrieves value from oracle based on queryId/timestamp\n @param _queryId being requested\n @param _timestamp to retrieve data/value from\n @return bytes value for queryId/timestamp submitted" - }, - "functionSelector": "c5958af9", - "id": 938, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "retrieveData", - "nameLocation": "14501:12:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 927, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 924, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "14522:8:0", - "nodeType": "VariableDeclaration", - "scope": 938, - "src": "14514:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 923, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "14514:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 926, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "14540:10:0", - "nodeType": "VariableDeclaration", - "scope": 938, - "src": "14532:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 925, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14532:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14513:38:0" - }, - "returnParameters": { - "id": 930, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 929, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 938, - "src": "14597:12:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 928, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "14597:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "14596:14:0" - }, - "scope": 1164, - "src": "14492:175:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 946, - "nodeType": "Block", - "src": "14830:31:0", - "statements": [ - { - "expression": { - "id": 944, - "name": "_symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 129, - "src": "14847:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 943, - "id": 945, - "nodeType": "Return", - "src": "14840:14:0" - } - ] - }, - "documentation": { - "id": 939, - "nodeType": "StructuredDocumentation", - "src": "14673:98:0", - "text": " @dev Returns the symbol of the token.\n @return string symbol of the token" - }, - "functionSelector": "95d89b41", - "id": 947, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nameLocation": "14785:6:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 940, - "nodeType": "ParameterList", - "parameters": [], - "src": "14791:2:0" - }, - "returnParameters": { - "id": 943, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 942, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 947, - "src": "14815:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 941, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "14815:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "14814:15:0" - }, - "scope": 1164, - "src": "14776:85:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 955, - "nodeType": "Block", - "src": "15032:36:0", - "statements": [ - { - "expression": { - "id": 953, - "name": "_totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "15049:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 952, - "id": 954, - "nodeType": "Return", - "src": "15042:19:0" - } - ] - }, - "documentation": { - "id": 948, - "nodeType": "StructuredDocumentation", - "src": "14867:107:0", - "text": " @dev Returns the total supply of the token.\n @return uint256 total supply of token" - }, - "functionSelector": "18160ddd", - "id": 956, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nameLocation": "14988:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 949, - "nodeType": "ParameterList", - "parameters": [], - "src": "14999:2:0" - }, - "returnParameters": { - "id": 952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 951, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 956, - "src": "15023:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 950, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15023:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "15022:9:0" - }, - "scope": 1164, - "src": "14979:89:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1000, - "nodeType": "Block", - "src": "15486:264:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 967, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "15504:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 970, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15522:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 969, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15514:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 968, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15514:7:0", - "typeDescriptions": {} - } - }, - "id": 971, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15514:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "15504:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", - "id": 973, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15526:38:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", - "typeString": "literal_string \"ERC20: approve from the zero address\"" - }, - "value": "ERC20: approve from the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", - "typeString": "literal_string \"ERC20: approve from the zero address\"" - } - ], - "id": 966, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "15496:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15496:69:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 975, - "nodeType": "ExpressionStatement", - "src": "15496:69:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 982, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 977, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "15583:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 980, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15603:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 979, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15595:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 978, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15595:7:0", - "typeDescriptions": {} - } - }, - "id": 981, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15595:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "15583:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", - "id": 983, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15607:36:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", - "typeString": "literal_string \"ERC20: approve to the zero address\"" - }, - "value": "ERC20: approve to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", - "typeString": "literal_string \"ERC20: approve to the zero address\"" - } - ], - "id": 976, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "15575:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 984, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15575:69:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 985, - "nodeType": "ExpressionStatement", - "src": "15575:69:0" - }, - { - "expression": { - "id": 992, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 986, - "name": "_allowances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "15654:11:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 989, - "indexExpression": { - "id": 987, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "15666:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15654:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 990, - "indexExpression": { - "id": 988, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "15674:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "15654:29:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 991, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 963, - "src": "15686:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "15654:39:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 993, - "nodeType": "ExpressionStatement", - "src": "15654:39:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 995, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "15717:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 996, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "15725:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 997, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 963, - "src": "15735:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 994, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9, - "src": "15708:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15708:35:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 999, - "nodeType": "EmitStatement", - "src": "15703:40:0" - } - ] - }, - "documentation": { - "id": 957, - "nodeType": "StructuredDocumentation", - "src": "15100:265:0", - "text": " @dev Internal function to approve tokens for the user\n @param _owner The owner of the tokens\n @param _spender The address which is allowed to spend the tokens\n @param _amount The amount that msg.sender is allowing spender to use" - }, - "id": 1001, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_approve", - "nameLocation": "15379:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 964, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 959, - "mutability": "mutable", - "name": "_owner", - "nameLocation": "15405:6:0", - "nodeType": "VariableDeclaration", - "scope": 1001, - "src": "15397:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 958, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15397:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 961, - "mutability": "mutable", - "name": "_spender", - "nameLocation": "15429:8:0", - "nodeType": "VariableDeclaration", - "scope": 1001, - "src": "15421:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 960, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15421:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 963, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "15455:7:0", - "nodeType": "VariableDeclaration", - "scope": 1001, - "src": "15447:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 962, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15447:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "15387:81:0" - }, - "returnParameters": { - "id": 965, - "nodeType": "ParameterList", - "parameters": [], - "src": "15486:0:0" - }, - "scope": 1164, - "src": "15370:380:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1038, - "nodeType": "Block", - "src": "16006:212:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1015, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1010, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1004, - "src": "16024:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 1013, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16044:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1012, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16036:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1011, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16036:7:0", - "typeDescriptions": {} - } - }, - "id": 1014, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16036:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "16024:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", - "id": 1016, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16048:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", - "typeString": "literal_string \"ERC20: burn from the zero address\"" - }, - "value": "ERC20: burn from the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", - "typeString": "literal_string \"ERC20: burn from the zero address\"" - } - ], - "id": 1009, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "16016:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1017, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16016:68:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1018, - "nodeType": "ExpressionStatement", - "src": "16016:68:0" - }, - { - "expression": { - "id": 1023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1019, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "16094:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1021, - "indexExpression": { - "id": 1020, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1004, - "src": "16104:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "16094:19:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 1022, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1006, - "src": "16117:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16094:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1024, - "nodeType": "ExpressionStatement", - "src": "16094:30:0" - }, - { - "expression": { - "id": 1027, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1025, - "name": "_totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "16134:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 1026, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1006, - "src": "16150:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16134:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1028, - "nodeType": "ExpressionStatement", - "src": "16134:23:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1030, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1004, - "src": "16181:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 1033, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16199:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1032, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16191:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1031, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16191:7:0", - "typeDescriptions": {} - } - }, - "id": 1034, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16191:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1035, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1006, - "src": "16203:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1029, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "16172:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 1036, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16172:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1037, - "nodeType": "EmitStatement", - "src": "16167:44:0" - } - ] - }, - "documentation": { - "id": 1002, - "nodeType": "StructuredDocumentation", - "src": "15756:178:0", - "text": " @dev Internal function to burn tokens for the user\n @param _account The address whose tokens to burn\n @param _amount The quantity of tokens to burn" - }, - "id": 1039, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_burn", - "nameLocation": "15948:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1007, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1004, - "mutability": "mutable", - "name": "_account", - "nameLocation": "15962:8:0", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "15954:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1003, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15954:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1006, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "15980:7:0", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "15972:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1005, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15972:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "15953:35:0" - }, - "returnParameters": { - "id": 1008, - "nodeType": "ParameterList", - "parameters": [], - "src": "16006:0:0" - }, - "scope": 1164, - "src": "15939:279:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1076, - "nodeType": "Block", - "src": "16487:210:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1048, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "16505:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16525:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1050, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16517:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1049, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16517:7:0", - "typeDescriptions": {} - } - }, - "id": 1052, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16517:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "16505:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", - "id": 1054, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16529:33:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", - "typeString": "literal_string \"ERC20: mint to the zero address\"" - }, - "value": "ERC20: mint to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", - "typeString": "literal_string \"ERC20: mint to the zero address\"" - } - ], - "id": 1047, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "16497:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16497:66:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1056, - "nodeType": "ExpressionStatement", - "src": "16497:66:0" - }, - { - "expression": { - "id": 1059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1057, - "name": "_totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "16573:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 1058, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1044, - "src": "16589:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16573:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1060, - "nodeType": "ExpressionStatement", - "src": "16573:23:0" - }, - { - "expression": { - "id": 1065, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1061, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "16606:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1063, - "indexExpression": { - "id": 1062, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "16616:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "16606:19:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 1064, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1044, - "src": "16629:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16606:30:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1066, - "nodeType": "ExpressionStatement", - "src": "16606:30:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 1070, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16668:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1069, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16660:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1068, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16660:7:0", - "typeDescriptions": {} - } - }, - "id": 1071, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16660:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1072, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "16672:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1073, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1044, - "src": "16682:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1067, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "16651:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 1074, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16651:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1075, - "nodeType": "EmitStatement", - "src": "16646:44:0" - } - ] - }, - "documentation": { - "id": 1040, - "nodeType": "StructuredDocumentation", - "src": "16224:191:0", - "text": " @dev Internal function to create new tokens for the user\n @param _account The address which receives minted tokens\n @param _amount The quantity of tokens to min" - }, - "id": 1077, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_mint", - "nameLocation": "16429:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1042, - "mutability": "mutable", - "name": "_account", - "nameLocation": "16443:8:0", - "nodeType": "VariableDeclaration", - "scope": 1077, - "src": "16435:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1041, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16435:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1044, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "16461:7:0", - "nodeType": "VariableDeclaration", - "scope": 1077, - "src": "16453:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "16453:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "16434:35:0" - }, - "returnParameters": { - "id": 1046, - "nodeType": "ParameterList", - "parameters": [], - "src": "16487:0:0" - }, - "scope": 1164, - "src": "16420:277:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1125, - "nodeType": "Block", - "src": "17057:338:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1093, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1088, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1080, - "src": "17075:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 1091, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17094:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1090, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17086:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1089, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17086:7:0", - "typeDescriptions": {} - } - }, - "id": 1092, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17086:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "17075:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", - "id": 1094, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17098:39:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", - "typeString": "literal_string \"ERC20: transfer from the zero address\"" - }, - "value": "ERC20: transfer from the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", - "typeString": "literal_string \"ERC20: transfer from the zero address\"" - } - ], - "id": 1087, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "17067:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1095, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17067:71:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1096, - "nodeType": "ExpressionStatement", - "src": "17067:71:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1103, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1098, - "name": "_recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1082, - "src": "17169:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 1101, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17191:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1100, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17183:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1099, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17183:7:0", - "typeDescriptions": {} - } - }, - "id": 1102, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17183:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "17169:24:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 1104, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17207:37:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", - "typeString": "literal_string \"ERC20: transfer to the zero address\"" - }, - "value": "ERC20: transfer to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", - "typeString": "literal_string \"ERC20: transfer to the zero address\"" - } - ], - "id": 1097, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "17148:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17148:106:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1106, - "nodeType": "ExpressionStatement", - "src": "17148:106:0" - }, - { - "expression": { - "id": 1111, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1107, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "17264:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1109, - "indexExpression": { - "id": 1108, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1080, - "src": "17274:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "17264:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 1110, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "17286:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17264:29:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1112, - "nodeType": "ExpressionStatement", - "src": "17264:29:0" - }, - { - "expression": { - "id": 1117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1113, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "17303:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1115, - "indexExpression": { - "id": 1114, - "name": "_recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1082, - "src": "17313:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "17303:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 1116, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "17328:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17303:32:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1118, - "nodeType": "ExpressionStatement", - "src": "17303:32:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1120, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1080, - "src": "17359:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1121, - "name": "_recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1082, - "src": "17368:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1122, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "17380:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1119, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "17350:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 1123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17350:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1124, - "nodeType": "EmitStatement", - "src": "17345:43:0" - } - ] - }, - "documentation": { - "id": 1078, - "nodeType": "StructuredDocumentation", - "src": "16703:229:0", - "text": " @dev Internal function to perform token transfer\n @param _sender The address which owns the tokens\n @param _recipient The destination address\n @param _amount The quantity of tokens to transfer" - }, - "id": 1126, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transfer", - "nameLocation": "16946:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1085, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1080, - "mutability": "mutable", - "name": "_sender", - "nameLocation": "16973:7:0", - "nodeType": "VariableDeclaration", - "scope": 1126, - "src": "16965:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1079, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16965:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1082, - "mutability": "mutable", - "name": "_recipient", - "nameLocation": "16998:10:0", - "nodeType": "VariableDeclaration", - "scope": 1126, - "src": "16990:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1081, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16990:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1084, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "17026:7:0", - "nodeType": "VariableDeclaration", - "scope": 1126, - "src": "17018:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1083, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17018:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "16955:84:0" - }, - "returnParameters": { - "id": 1086, - "nodeType": "ParameterList", - "parameters": [], - "src": "17057:0:0" - }, - "scope": 1164, - "src": "16937:458:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1162, - "nodeType": "Block", - "src": "17846:209:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1139, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1129, - "src": "17866:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1140, - "name": "_recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1131, - "src": "17875:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1141, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1133, - "src": "17887:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1138, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1126, - "src": "17856:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 1142, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17856:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1143, - "nodeType": "ExpressionStatement", - "src": "17856:39:0" - }, - { - "expression": { - "arguments": [ - { - "id": 1145, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1129, - "src": "17927:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1146, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "17948:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17948:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "baseExpression": { - "id": 1148, - "name": "_allowances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "17972:11:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 1150, - "indexExpression": { - "id": 1149, - "name": "_sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1129, - "src": "17984:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17972:20:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1155, - "indexExpression": { - "arguments": [ - { - "id": 1153, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "18001:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1164", - "typeString": "contract TellorPlayground" - } - ], - "id": 1152, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17993:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1151, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17993:7:0", - "typeDescriptions": {} - } - }, - "id": 1154, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17993:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17972:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 1156, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1133, - "src": "18010:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17972:45:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1144, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1001, - "src": "17905:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 1158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17905:122:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1159, - "nodeType": "ExpressionStatement", - "src": "17905:122:0" - }, - { - "expression": { - "hexValue": "74727565", - "id": 1160, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18044:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1137, - "id": 1161, - "nodeType": "Return", - "src": "18037:11:0" - } - ] - }, - "documentation": { - "id": 1127, - "nodeType": "StructuredDocumentation", - "src": "17401:301:0", - "text": " @dev Allows this contract to transfer tokens from one user to another\n @param _sender The address which owns the tokens\n @param _recipient The destination address\n @param _amount The quantity of tokens to transfer\n @return bool Whether the transfer succeeded" - }, - "id": 1163, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transferFrom", - "nameLocation": "17716:13:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1134, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1129, - "mutability": "mutable", - "name": "_sender", - "nameLocation": "17747:7:0", - "nodeType": "VariableDeclaration", - "scope": 1163, - "src": "17739:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1128, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17739:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1131, - "mutability": "mutable", - "name": "_recipient", - "nameLocation": "17772:10:0", - "nodeType": "VariableDeclaration", - "scope": 1163, - "src": "17764:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1130, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17764:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1133, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "17800:7:0", - "nodeType": "VariableDeclaration", - "scope": 1163, - "src": "17792:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1132, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17792:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "17729:84:0" - }, - "returnParameters": { - "id": 1137, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1136, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1163, - "src": "17840:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1135, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "17840:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "17839:6:0" - }, - "scope": 1164, - "src": "17707:348:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 1165, - "src": "57:18000:0" - } - ], - "src": "32:18026:0" - }, - "id": 0 - }, - "contracts/UsingTellor.sol": { - "ast": { - "absolutePath": "contracts/UsingTellor.sol", - "exportedSymbols": { - "ITellor": [ - 2435 - ], - "UsingTellor": [ - 1658 - ] - }, - "id": 1659, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1166, - "literals": [ - "solidity", - ">=", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:24:1" - }, - { - "absolutePath": "contracts/interface/ITellor.sol", - "file": "./interface/ITellor.sol", - "id": 1167, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1659, - "sourceUnit": 2436, - "src": "58:33:1", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1168, - "nodeType": "StructuredDocumentation", - "src": "93:153:1", - "text": " @title UserContract\n This contract allows for easy integration with the Tellor System\n by helping smart contracts to read data from Tellor" - }, - "fullyImplemented": true, - "id": 1658, - "linearizedBaseContracts": [ - 1658 - ], - "name": "UsingTellor", - "nameLocation": "256:11:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "1959ad5b", - "id": 1171, - "mutability": "mutable", - "name": "tellor", - "nameLocation": "289:6:1", - "nodeType": "VariableDeclaration", - "scope": 1658, - "src": "274:21:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "typeName": { - "id": 1170, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1169, - "name": "ITellor", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2435, - "src": "274:7:1" - }, - "referencedDeclaration": 2435, - "src": "274:7:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 1183, - "nodeType": "Block", - "src": "488:42:1", - "statements": [ - { - "expression": { - "id": 1181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1177, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "498:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1179, - "name": "_tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "515:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 1178, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "507:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "507:16:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "498:25:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1182, - "nodeType": "ExpressionStatement", - "src": "498:25:1" - } - ] - }, - "documentation": { - "id": 1172, - "nodeType": "StructuredDocumentation", - "src": "322:124:1", - "text": " @dev the constructor sets the tellor address in storage\n @param _tellor is the TellorMaster address" - }, - "id": 1184, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1175, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1174, - "mutability": "mutable", - "name": "_tellor", - "nameLocation": "479:7:1", - "nodeType": "VariableDeclaration", - "scope": 1184, - "src": "463:23:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 1173, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "463:15:1", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - } - ], - "src": "462:25:1" - }, - "returnParameters": { - "id": 1176, - "nodeType": "ParameterList", - "parameters": [], - "src": "488:0:1" - }, - "scope": 1658, - "src": "451:79:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1255, - "nodeType": "Block", - "src": "1097:413:1", - "statements": [ - { - "assignments": [ - 1197 - ], - "declarations": [ - { - "constant": false, - "id": 1197, - "mutability": "mutable", - "name": "_count", - "nameLocation": "1115:6:1", - "nodeType": "VariableDeclaration", - "scope": 1255, - "src": "1107:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1196, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1107:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1201, - "initialValue": { - "arguments": [ - { - "id": 1199, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1187, - "src": "1150:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 1198, - "name": "getNewValueCountbyQueryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "1124:25:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$", - "typeString": "function (bytes32) view returns (uint256)" - } - }, - "id": 1200, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1124:35:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1107:52:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1202, - "name": "_count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1197, - "src": "1174:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1184:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1174:11:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1214, - "nodeType": "IfStatement", - "src": "1170:70:1", - "trueBody": { - "id": 1213, - "nodeType": "Block", - "src": "1187:53:1", - "statements": [ - { - "expression": { - "components": [ - { - "hexValue": "66616c7365", - "id": 1205, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1209:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "arguments": [ - { - "hexValue": "", - "id": 1208, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1222:2:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1207, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1216:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1206, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1216:5:1", - "typeDescriptions": {} - } - }, - "id": 1209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1216:9:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1210, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1227:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "id": 1211, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1208:21:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_rational_0_by_1_$", - "typeString": "tuple(bool,bytes memory,int_const 0)" - } - }, - "functionReturnParameters": 1195, - "id": 1212, - "nodeType": "Return", - "src": "1201:28:1" - } - ] - } - }, - { - "assignments": [ - 1216 - ], - "declarations": [ - { - "constant": false, - "id": 1216, - "mutability": "mutable", - "name": "_time", - "nameLocation": "1257:5:1", - "nodeType": "VariableDeclaration", - "scope": 1255, - "src": "1249:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1215, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1249:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1223, - "initialValue": { - "arguments": [ - { - "id": 1218, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1187, - "src": "1295:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1221, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1219, - "name": "_count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1197, - "src": "1305:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1220, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1314:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1305:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1217, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "1265:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1222, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1265:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1249:67:1" - }, - { - "expression": { - "id": 1229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1224, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1192, - "src": "1326:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1226, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1187, - "src": "1348:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1227, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1216, - "src": "1358:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1225, - "name": "retrieveData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1657, - "src": "1335:12:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes32,uint256) view returns (bytes memory)" - } - }, - "id": 1228, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1335:29:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "1326:38:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1230, - "nodeType": "ExpressionStatement", - "src": "1326:38:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 1240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 1232, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1192, - "src": "1388:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1231, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1378:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1378:17:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "", - "id": 1237, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1415:2:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1236, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1409:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1235, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1409:5:1", - "typeDescriptions": {} - } - }, - "id": 1238, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1409:9:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1234, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1399:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1239, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1399:20:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "1378:41:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1246, - "nodeType": "IfStatement", - "src": "1374:87:1", - "trueBody": { - "expression": { - "components": [ - { - "hexValue": "74727565", - "id": 1241, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1441:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "id": 1242, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1192, - "src": "1447:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1243, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1216, - "src": "1455:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1244, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1440:21:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_uint256_$", - "typeString": "tuple(bool,bytes memory,uint256)" - } - }, - "functionReturnParameters": 1195, - "id": 1245, - "nodeType": "Return", - "src": "1433:28:1" - } - }, - { - "expression": { - "components": [ - { - "hexValue": "66616c7365", - "id": 1247, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1479:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "arguments": [ - { - "hexValue": "", - "id": 1250, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1492:2:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1249, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1486:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1248, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1486:5:1", - "typeDescriptions": {} - } - }, - "id": 1251, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1486:9:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1252, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1216, - "src": "1497:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1253, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1478:25:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_uint256_$", - "typeString": "tuple(bool,bytes memory,uint256)" - } - }, - "functionReturnParameters": 1195, - "id": 1254, - "nodeType": "Return", - "src": "1471:32:1" - } - ] - }, - "documentation": { - "id": 1185, - "nodeType": "StructuredDocumentation", - "src": "552:334:1", - "text": " @dev Allows the user to get the latest value for the queryId specified\n @param _queryId is the id to look up the value for\n @return _ifRetrieve bool true if non-zero value successfully retrieved\n @return _value the value retrieved\n @return _timestampRetrieved the retrieved value's timestamp" - }, - "functionSelector": "adf1639d", - "id": 1256, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCurrentValue", - "nameLocation": "900:15:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1188, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1187, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "924:8:1", - "nodeType": "VariableDeclaration", - "scope": 1256, - "src": "916:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1186, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "916:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "915:18:1" - }, - "returnParameters": { - "id": 1195, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1190, - "mutability": "mutable", - "name": "_ifRetrieve", - "nameLocation": "997:11:1", - "nodeType": "VariableDeclaration", - "scope": 1256, - "src": "992:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1189, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "992:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1192, - "mutability": "mutable", - "name": "_value", - "nameLocation": "1035:6:1", - "nodeType": "VariableDeclaration", - "scope": 1256, - "src": "1022:19:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1191, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1022:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1194, - "mutability": "mutable", - "name": "_timestampRetrieved", - "nameLocation": "1063:19:1", - "nodeType": "VariableDeclaration", - "scope": 1256, - "src": "1055:27:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1193, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1055:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "978:114:1" - }, - "scope": 1658, - "src": "891:619:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1328, - "nodeType": "Block", - "src": "2143:433:1", - "statements": [ - { - "assignments": [ - 1271, - 1273 - ], - "declarations": [ - { - "constant": false, - "id": 1271, - "mutability": "mutable", - "name": "_found", - "nameLocation": "2159:6:1", - "nodeType": "VariableDeclaration", - "scope": 1328, - "src": "2154:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1270, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2154:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1273, - "mutability": "mutable", - "name": "_index", - "nameLocation": "2175:6:1", - "nodeType": "VariableDeclaration", - "scope": 1328, - "src": "2167:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1272, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2167:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1278, - "initialValue": { - "arguments": [ - { - "id": 1275, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2220:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1276, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "2242:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1274, - "name": "getIndexForDataBefore", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "2185:21:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bool_$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (bool,uint256)" - } - }, - "id": 1277, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2185:77:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", - "typeString": "tuple(bool,uint256)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2153:109:1" - }, - { - "condition": { - "id": 1280, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "2276:7:1", - "subExpression": { - "id": 1279, - "name": "_found", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "2277:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1289, - "nodeType": "IfStatement", - "src": "2272:41:1", - "trueBody": { - "expression": { - "components": [ - { - "hexValue": "66616c7365", - "id": 1281, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2293:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "arguments": [ - { - "hexValue": "", - "id": 1284, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2306:2:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1283, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2300:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1282, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2300:5:1", - "typeDescriptions": {} - } - }, - "id": 1285, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2300:9:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1286, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2311:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "id": 1287, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2292:21:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_rational_0_by_1_$", - "typeString": "tuple(bool,bytes memory,int_const 0)" - } - }, - "functionReturnParameters": 1269, - "id": 1288, - "nodeType": "Return", - "src": "2285:28:1" - } - }, - { - "assignments": [ - 1291 - ], - "declarations": [ - { - "constant": false, - "id": 1291, - "mutability": "mutable", - "name": "_time", - "nameLocation": "2331:5:1", - "nodeType": "VariableDeclaration", - "scope": 1328, - "src": "2323:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1290, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2323:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1296, - "initialValue": { - "arguments": [ - { - "id": 1293, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2369:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1294, - "name": "_index", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "2379:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1292, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "2339:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2339:47:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2323:63:1" - }, - { - "expression": { - "id": 1302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1297, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "2396:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1299, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2418:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1300, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "2428:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1298, - "name": "retrieveData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1657, - "src": "2405:12:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes32,uint256) view returns (bytes memory)" - } - }, - "id": 1301, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2405:29:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "2396:38:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1303, - "nodeType": "ExpressionStatement", - "src": "2396:38:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 1313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 1305, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "2458:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1304, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "2448:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2448:17:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "", - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2485:2:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1309, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2479:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1308, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2479:5:1", - "typeDescriptions": {} - } - }, - "id": 1311, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2479:9:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1307, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "2469:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2469:20:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "2448:41:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1319, - "nodeType": "IfStatement", - "src": "2444:87:1", - "trueBody": { - "expression": { - "components": [ - { - "hexValue": "74727565", - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2511:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "id": 1315, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "2517:6:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1316, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "2525:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1317, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2510:21:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_uint256_$", - "typeString": "tuple(bool,bytes memory,uint256)" - } - }, - "functionReturnParameters": 1269, - "id": 1318, - "nodeType": "Return", - "src": "2503:28:1" - } - }, - { - "expression": { - "components": [ - { - "hexValue": "66616c7365", - "id": 1320, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2549:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "arguments": [ - { - "hexValue": "", - "id": 1323, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2562:2:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1322, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2556:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1321, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2556:5:1", - "typeDescriptions": {} - } - }, - "id": 1324, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2556:9:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1325, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2567:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "id": 1326, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2548:21:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_rational_0_by_1_$", - "typeString": "tuple(bool,bytes memory,int_const 0)" - } - }, - "functionReturnParameters": 1269, - "id": 1327, - "nodeType": "Return", - "src": "2541:28:1" - } - ] - }, - "documentation": { - "id": 1257, - "nodeType": "StructuredDocumentation", - "src": "1516:398:1", - "text": " @dev Retrieves the latest value for the queryId before the specified timestamp\n @param _queryId is the queryId to look up the value for\n @param _timestamp before which to search for latest value\n @return _ifRetrieve bool true if able to retrieve a non-zero value\n @return _value the value retrieved\n @return _timestampRetrieved the value's timestamp" - }, - "functionSelector": "a792765f", - "id": 1329, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getDataBefore", - "nameLocation": "1928:13:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1262, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1259, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "1950:8:1", - "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "1942:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1258, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1942:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1261, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "1968:10:1", - "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "1960:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1260, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1960:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1941:38:1" - }, - "returnParameters": { - "id": 1269, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1264, - "mutability": "mutable", - "name": "_ifRetrieve", - "nameLocation": "2043:11:1", - "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "2038:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1263, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2038:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1266, - "mutability": "mutable", - "name": "_value", - "nameLocation": "2081:6:1", - "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "2068:19:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1265, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2068:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1268, - "mutability": "mutable", - "name": "_timestampRetrieved", - "nameLocation": "2109:19:1", - "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "2101:27:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1267, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2101:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2024:114:1" - }, - "scope": 1658, - "src": "1919:657:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1483, - "nodeType": "Block", - "src": "3160:2008:1", - "statements": [ - { - "assignments": [ - 1342 - ], - "declarations": [ - { - "constant": false, - "id": 1342, - "mutability": "mutable", - "name": "_count", - "nameLocation": "3178:6:1", - "nodeType": "VariableDeclaration", - "scope": 1483, - "src": "3170:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1341, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3170:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1346, - "initialValue": { - "arguments": [ - { - "id": 1344, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1332, - "src": "3213:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 1343, - "name": "getNewValueCountbyQueryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "3187:25:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$", - "typeString": "function (bytes32) view returns (uint256)" - } - }, - "id": 1345, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3187:35:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3170:52:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1347, - "name": "_count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1342, - "src": "3237:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1348, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3246:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3237:10:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1478, - "nodeType": "IfStatement", - "src": "3233:1902:1", - "trueBody": { - "id": 1477, - "nodeType": "Block", - "src": "3249:1886:1", - "statements": [ - { - "assignments": [ - 1351 - ], - "declarations": [ - { - "constant": false, - "id": 1351, - "mutability": "mutable", - "name": "middle", - "nameLocation": "3271:6:1", - "nodeType": "VariableDeclaration", - "scope": 1477, - "src": "3263:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1350, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3263:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1352, - "nodeType": "VariableDeclarationStatement", - "src": "3263:14:1" - }, - { - "assignments": [ - 1354 - ], - "declarations": [ - { - "constant": false, - "id": 1354, - "mutability": "mutable", - "name": "start", - "nameLocation": "3299:5:1", - "nodeType": "VariableDeclaration", - "scope": 1477, - "src": "3291:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1353, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3291:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1356, - "initialValue": { - "hexValue": "30", - "id": 1355, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3307:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "3291:17:1" - }, - { - "assignments": [ - 1358 - ], - "declarations": [ - { - "constant": false, - "id": 1358, - "mutability": "mutable", - "name": "end", - "nameLocation": "3330:3:1", - "nodeType": "VariableDeclaration", - "scope": 1477, - "src": "3322:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1357, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3322:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1362, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1359, - "name": "_count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1342, - "src": "3336:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1360, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3345:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3336:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3322:24:1" - }, - { - "assignments": [ - 1364 - ], - "declarations": [ - { - "constant": false, - "id": 1364, - "mutability": "mutable", - "name": "_time", - "nameLocation": "3368:5:1", - "nodeType": "VariableDeclaration", - "scope": 1477, - "src": "3360:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1363, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3360:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1365, - "nodeType": "VariableDeclarationStatement", - "src": "3360:13:1" - }, - { - "expression": { - "id": 1371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1366, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1364, - "src": "3453:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1368, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1332, - "src": "3491:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1369, - "name": "start", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "3501:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1367, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "3461:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3461:46:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3453:54:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1372, - "nodeType": "ExpressionStatement", - "src": "3453:54:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1373, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1364, - "src": "3525:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1374, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1334, - "src": "3534:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3525:19:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1380, - "nodeType": "IfStatement", - "src": "3521:42:1", - "trueBody": { - "expression": { - "components": [ - { - "hexValue": "66616c7365", - "id": 1376, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3554:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "hexValue": "30", - "id": 1377, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3561:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "id": 1378, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3553:10:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", - "typeString": "tuple(bool,int_const 0)" - } - }, - "functionReturnParameters": 1340, - "id": 1379, - "nodeType": "Return", - "src": "3546:17:1" - } - }, - { - "expression": { - "id": 1386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1381, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1364, - "src": "3577:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1383, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1332, - "src": "3615:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1384, - "name": "end", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1358, - "src": "3625:3:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1382, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "3585:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1385, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3585:44:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3577:52:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1387, - "nodeType": "ExpressionStatement", - "src": "3577:52:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1390, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1388, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1364, - "src": "3647:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1389, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1334, - "src": "3655:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3647:18:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1395, - "nodeType": "IfStatement", - "src": "3643:42:1", - "trueBody": { - "expression": { - "components": [ - { - "hexValue": "74727565", - "id": 1391, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3675:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "id": 1392, - "name": "end", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1358, - "src": "3681:3:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1393, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3674:11:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", - "typeString": "tuple(bool,uint256)" - } - }, - "functionReturnParameters": 1340, - "id": 1394, - "nodeType": "Return", - "src": "3667:18:1" - } - }, - { - "body": { - "id": 1475, - "nodeType": "Block", - "src": "3788:1337:1", - "statements": [ - { - "expression": { - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1397, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "3806:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1407, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1398, - "name": "end", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1358, - "src": "3816:3:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 1399, - "name": "start", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "3822:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3816:11:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1401, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3815:13:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 1402, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3831:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "3815:17:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 1404, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3835:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3815:21:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 1406, - "name": "start", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "3839:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3815:29:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3806:38:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1409, - "nodeType": "ExpressionStatement", - "src": "3806:38:1" - }, - { - "expression": { - "id": 1415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1410, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1364, - "src": "3862:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1412, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1332, - "src": "3900:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1413, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "3910:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1411, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "3870:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3870:47:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3862:55:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1416, - "nodeType": "ExpressionStatement", - "src": "3862:55:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1417, - "name": "_time", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1364, - "src": "3939:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1418, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1334, - "src": "3947:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3939:18:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1473, - "nodeType": "Block", - "src": "4496:491:1", - "statements": [ - { - "assignments": [ - 1447 - ], - "declarations": [ - { - "constant": false, - "id": 1447, - "mutability": "mutable", - "name": "_prevTime", - "nameLocation": "4526:9:1", - "nodeType": "VariableDeclaration", - "scope": 1473, - "src": "4518:17:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1446, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4518:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1454, - "initialValue": { - "arguments": [ - { - "id": 1449, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1332, - "src": "4593:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1452, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1450, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "4627:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1451, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4636:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "4627:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1448, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "4538:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4538:121:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4518:141:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1455, - "name": "_prevTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1447, - "src": "4685:9:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1456, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1334, - "src": "4697:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4685:22:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1471, - "nodeType": "Block", - "src": "4837:132:1", - "statements": [ - { - "expression": { - "id": 1469, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1465, - "name": "end", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1358, - "src": "4930:3:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1466, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "4936:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4945:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "4936:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4930:16:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1470, - "nodeType": "ExpressionStatement", - "src": "4930:16:1" - } - ] - }, - "id": 1472, - "nodeType": "IfStatement", - "src": "4681:288:1", - "trueBody": { - "id": 1464, - "nodeType": "Block", - "src": "4709:122:1", - "statements": [ - { - "expression": { - "components": [ - { - "hexValue": "74727565", - "id": 1458, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4791:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1461, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1459, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "4797:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1460, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4806:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "4797:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1462, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "4790:18:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", - "typeString": "tuple(bool,uint256)" - } - }, - "functionReturnParameters": 1340, - "id": 1463, - "nodeType": "Return", - "src": "4783:25:1" - } - ] - } - } - ] - }, - "id": 1474, - "nodeType": "IfStatement", - "src": "3935:1052:1", - "trueBody": { - "id": 1445, - "nodeType": "Block", - "src": "3959:531:1", - "statements": [ - { - "assignments": [ - 1421 - ], - "declarations": [ - { - "constant": false, - "id": 1421, - "mutability": "mutable", - "name": "_nextTime", - "nameLocation": "4036:9:1", - "nodeType": "VariableDeclaration", - "scope": 1445, - "src": "4028:17:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1420, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4028:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1428, - "initialValue": { - "arguments": [ - { - "id": 1423, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1332, - "src": "4103:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1424, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "4137:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 1425, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4146:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "4137:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1422, - "name": "getTimestampbyQueryIdandIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1553, - "src": "4048:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view returns (uint256)" - } - }, - "id": 1427, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4048:121:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4028:141:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1431, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1429, - "name": "_nextTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1421, - "src": "4195:9:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1430, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1334, - "src": "4208:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4195:23:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1443, - "nodeType": "Block", - "src": "4339:133:1", - "statements": [ - { - "expression": { - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1437, - "name": "start", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "4431:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1438, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "4439:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 1439, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4448:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "4439:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4431:18:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1442, - "nodeType": "ExpressionStatement", - "src": "4431:18:1" - } - ] - }, - "id": 1444, - "nodeType": "IfStatement", - "src": "4191:281:1", - "trueBody": { - "id": 1436, - "nodeType": "Block", - "src": "4220:113:1", - "statements": [ - { - "expression": { - "components": [ - { - "hexValue": "74727565", - "id": 1432, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4297:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "id": 1433, - "name": "middle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1351, - "src": "4303:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1434, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "4296:14:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", - "typeString": "tuple(bool,uint256)" - } - }, - "functionReturnParameters": 1340, - "id": 1435, - "nodeType": "Return", - "src": "4289:21:1" - } - ] - } - } - ] - } - } - ] - }, - "condition": { - "hexValue": "74727565", - "id": 1396, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3782:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "id": 1476, - "nodeType": "WhileStatement", - "src": "3775:1350:1" - } - ] - } - }, - { - "expression": { - "components": [ - { - "hexValue": "66616c7365", - "id": 1479, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5152:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "hexValue": "30", - "id": 1480, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5159:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "id": 1481, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "5151:10:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", - "typeString": "tuple(bool,int_const 0)" - } - }, - "functionReturnParameters": 1340, - "id": 1482, - "nodeType": "Return", - "src": "5144:17:1" - } - ] - }, - "documentation": { - "id": 1330, - "nodeType": "StructuredDocumentation", - "src": "2582:382:1", - "text": " @dev Retrieves latest array index of data before the specified timestamp for the queryId\n @param _queryId is the queryId to look up the index for\n @param _timestamp is the timestamp before which to search for the latest index\n @return _found whether the index was found\n @return _index the latest index found before the specified timestamp" - }, - "functionSelector": "29449085", - "id": 1484, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getIndexForDataBefore", - "nameLocation": "3022:21:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1335, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1332, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "3052:8:1", - "nodeType": "VariableDeclaration", - "scope": 1484, - "src": "3044:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1331, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3044:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1334, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "3070:10:1", - "nodeType": "VariableDeclaration", - "scope": 1484, - "src": "3062:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1333, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3062:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3043:38:1" - }, - "returnParameters": { - "id": 1340, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1337, - "mutability": "mutable", - "name": "_found", - "nameLocation": "3132:6:1", - "nodeType": "VariableDeclaration", - "scope": 1484, - "src": "3127:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1336, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3127:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1339, - "mutability": "mutable", - "name": "_index", - "nameLocation": "3148:6:1", - "nodeType": "VariableDeclaration", - "scope": 1484, - "src": "3140:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1338, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3140:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3126:29:1" - }, - "scope": 1658, - "src": "3013:2155:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1516, - "nodeType": "Block", - "src": "5501:373:1", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1492, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "5569:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", - "id": 1494, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5587:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1493, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "5579:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1495, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5579:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "5569:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1497, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "5646:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", - "id": 1499, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5664:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1498, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "5656:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1500, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5656:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "5646:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5569:138:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1514, - "nodeType": "Block", - "src": "5794:74:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1511, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "5848:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1509, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "5815:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1510, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getNewValueCountbyQueryId", - "nodeType": "MemberAccess", - "referencedDeclaration": 1976, - "src": "5815:32:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_uint256_$", - "typeString": "function (bytes32) view external returns (uint256)" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5815:42:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1491, - "id": 1513, - "nodeType": "Return", - "src": "5808:49:1" - } - ] - }, - "id": 1515, - "nodeType": "IfStatement", - "src": "5552:316:1", - "trueBody": { - "id": 1508, - "nodeType": "Block", - "src": "5718:70:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1505, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "5768:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1503, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "5739:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1504, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getTimestampCountById", - "nodeType": "MemberAccess", - "referencedDeclaration": 2298, - "src": "5739:28:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_uint256_$", - "typeString": "function (bytes32) view external returns (uint256)" - } - }, - "id": 1506, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5739:38:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1491, - "id": 1507, - "nodeType": "Return", - "src": "5732:45:1" - } - ] - } - } - ] - }, - "documentation": { - "id": 1485, - "nodeType": "StructuredDocumentation", - "src": "5174:211:1", - "text": " @dev Counts the number of values that have been submitted for the queryId\n @param _queryId the id to look up\n @return uint256 count of the number of values received for the queryId" - }, - "functionSelector": "77b03e0d", - "id": 1517, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getNewValueCountbyQueryId", - "nameLocation": "5399:25:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1488, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1487, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5433:8:1", - "nodeType": "VariableDeclaration", - "scope": 1517, - "src": "5425:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1486, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5425:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5424:18:1" - }, - "returnParameters": { - "id": 1491, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1490, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1517, - "src": "5488:7:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1489, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5488:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5487:9:1" - }, - "scope": 1658, - "src": "5390:484:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1552, - "nodeType": "Block", - "src": "6239:397:1", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1536, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1526, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "6307:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6325:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1527, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "6317:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6317:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "6307:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1535, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1531, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "6384:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", - "id": 1533, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6402:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1532, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "6394:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1534, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6394:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "6384:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6307:138:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1550, - "nodeType": "Block", - "src": "6544:86:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1546, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "6602:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1547, - "name": "_index", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6612:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1544, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "6565:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getTimestampbyQueryIdandIndex", - "nodeType": "MemberAccess", - "referencedDeclaration": 1985, - "src": "6565:36:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view external returns (uint256)" - } - }, - "id": 1548, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6565:54:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1525, - "id": 1549, - "nodeType": "Return", - "src": "6558:61:1" - } - ] - }, - "id": 1551, - "nodeType": "IfStatement", - "src": "6290:340:1", - "trueBody": { - "id": 1543, - "nodeType": "Block", - "src": "6456:82:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1539, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "6510:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1540, - "name": "_index", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6520:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1537, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "6477:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getReportTimestampByIndex", - "nodeType": "MemberAccess", - "referencedDeclaration": 2181, - "src": "6477:32:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (bytes32,uint256) view external returns (uint256)" - } - }, - "id": 1541, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6477:50:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1525, - "id": 1542, - "nodeType": "Return", - "src": "6470:57:1" - } - ] - } - } - ] - }, - "functionSelector": "ce5e11bf", - "id": 1553, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getTimestampbyQueryIdandIndex", - "nameLocation": "6117:29:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1522, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1519, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6155:8:1", - "nodeType": "VariableDeclaration", - "scope": 1553, - "src": "6147:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1518, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6147:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1521, - "mutability": "mutable", - "name": "_index", - "nameLocation": "6173:6:1", - "nodeType": "VariableDeclaration", - "scope": 1553, - "src": "6165:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1520, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6165:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6146:34:1" - }, - "returnParameters": { - "id": 1525, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1524, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1553, - "src": "6226:7:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1523, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6226:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6225:9:1" - }, - "scope": 1658, - "src": "6108:528:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1619, - "nodeType": "Block", - "src": "7043:833:1", - "statements": [ - { - "assignments": [ - 1565 - ], - "declarations": [ - { - "constant": false, - "id": 1565, - "mutability": "mutable", - "name": "_governance", - "nameLocation": "7061:11:1", - "nodeType": "VariableDeclaration", - "scope": 1619, - "src": "7053:19:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "typeName": { - "id": 1564, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1563, - "name": "ITellor", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2435, - "src": "7053:7:1" - }, - "referencedDeclaration": 2435, - "src": "7053:7:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "visibility": "internal" - } - ], - "id": 1566, - "nodeType": "VariableDeclarationStatement", - "src": "7053:19:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1571, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1567, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "7140:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", - "id": 1569, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7158:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1568, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "7150:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1570, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7150:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "7140:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1572, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "7217:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7235:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1573, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "7227:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7227:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "7217:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7140:138:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1603, - "nodeType": "Block", - "src": "7615:67:1", - "statements": [ - { - "expression": { - "id": 1601, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1595, - "name": "_governance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1565, - "src": "7629:11:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1597, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "7651:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1598, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "governance", - "nodeType": "MemberAccess", - "referencedDeclaration": 2052, - "src": "7651:17:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 1599, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7651:19:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1596, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "7643:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7643:28:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "7629:42:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1602, - "nodeType": "ExpressionStatement", - "src": "7629:42:1" - } - ] - }, - "id": 1604, - "nodeType": "IfStatement", - "src": "7123:559:1", - "trueBody": { - "id": 1594, - "nodeType": "Block", - "src": "7289:320:1", - "statements": [ - { - "assignments": [ - 1580 - ], - "declarations": [ - { - "constant": false, - "id": 1580, - "mutability": "mutable", - "name": "_newTellor", - "nameLocation": "7311:10:1", - "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "7303:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "typeName": { - "id": 1579, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1578, - "name": "ITellor", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2435, - "src": "7303:7:1" - }, - "referencedDeclaration": 2435, - "src": "7303:7:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "visibility": "internal" - } - ], - "id": 1584, - "initialValue": { - "arguments": [ - { - "hexValue": "307838386446353932463865623544374264333862466546376445623066426330326366333737386130", - "id": 1582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7349:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x88dF592F8eb5D7Bd38bFeF7dEb0fBc02cf3778a0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1581, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "7324:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1583, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7324:81:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7303:102:1" - }, - { - "expression": { - "id": 1592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1585, - "name": "_governance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1565, - "src": "7419:11:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "307865666131396261613836343034396635303439313039333538306335343333653937653864356534316638646231613631313038623466613434636163643933", - "id": 1589, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7500:66:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", - "typeString": "int_const 1083...(70 digits omitted)...8627" - }, - "value": "0xefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", - "typeString": "int_const 1083...(70 digits omitted)...8627" - } - ], - "expression": { - "id": 1587, - "name": "_newTellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "7458:10:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "addresses", - "nodeType": "MemberAccess", - "referencedDeclaration": 1667, - "src": "7458:20:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32) view external returns (address)" - } - }, - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7458:126:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1586, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "7433:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7433:165:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "7419:179:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1593, - "nodeType": "ExpressionStatement", - "src": "7419:179:1" - } - ] - } - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 1610, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1556, - "src": "7801:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1611, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "7811:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1608, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "7784:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1609, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7784:16:1", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7784:38:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1607, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "7774:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7774:49:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1605, - "name": "_governance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1565, - "src": "7710:11:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getVoteRounds", - "nodeType": "MemberAccess", - "referencedDeclaration": 2112, - "src": "7710:42:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", - "typeString": "function (bytes32) view external returns (uint256[] memory)" - } - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7710:131:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 1615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7710:155:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1616, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7868:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7710:159:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1562, - "id": 1618, - "nodeType": "Return", - "src": "7691:178:1" - } - ] - }, - "documentation": { - "id": 1554, - "nodeType": "StructuredDocumentation", - "src": "6642:282:1", - "text": " @dev Determines whether a value with a given queryId and timestamp has been disputed\n @param _queryId is the value id to look up\n @param _timestamp is the timestamp of the value to look up\n @return bool true if queryId/timestamp is under dispute" - }, - "functionSelector": "44e87f91", - "id": 1620, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isInDispute", - "nameLocation": "6938:11:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1559, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1556, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6958:8:1", - "nodeType": "VariableDeclaration", - "scope": 1620, - "src": "6950:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1555, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6950:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1558, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "6976:10:1", - "nodeType": "VariableDeclaration", - "scope": 1620, - "src": "6968:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1557, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6968:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6949:38:1" - }, - "returnParameters": { - "id": 1562, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1561, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1620, - "src": "7033:4:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1560, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7033:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7032:6:1" - }, - "scope": 1658, - "src": "6929:947:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1656, - "nodeType": "Block", - "src": "8236:382:1", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1634, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1630, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "8304:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", - "id": 1632, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8322:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1631, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "8314:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1633, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8314:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "8304:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - }, - "id": 1639, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1635, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "8381:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", - "id": 1637, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8399:42:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1636, - "name": "ITellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "8391:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITellor_$2435_$", - "typeString": "type(contract ITellor)" - } - }, - "id": 1638, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8391:51:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "src": "8381:61:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8304:138:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1654, - "nodeType": "Block", - "src": "8539:73:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1650, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1623, - "src": "8580:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1651, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "8590:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1648, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "8560:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "retrieveData", - "nodeType": "MemberAccess", - "referencedDeclaration": 1994, - "src": "8560:19:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes32,uint256) view external returns (bytes memory)" - } - }, - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8560:41:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1629, - "id": 1653, - "nodeType": "Return", - "src": "8553:48:1" - } - ] - }, - "id": 1655, - "nodeType": "IfStatement", - "src": "8287:325:1", - "trueBody": { - "id": 1647, - "nodeType": "Block", - "src": "8453:80:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1643, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1623, - "src": "8501:8:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 1644, - "name": "_timestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "8511:10:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1641, - "name": "tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1171, - "src": "8474:6:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITellor_$2435", - "typeString": "contract ITellor" - } - }, - "id": 1642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getValueByTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2190, - "src": "8474:26:1", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes32,uint256) view external returns (bytes memory)" - } - }, - "id": 1645, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8474:48:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1629, - "id": 1646, - "nodeType": "Return", - "src": "8467:55:1" - } - ] - } - } - ] - }, - "documentation": { - "id": 1621, - "nodeType": "StructuredDocumentation", - "src": "7882:226:1", - "text": " @dev Retrieve value from oracle based on queryId/timestamp\n @param _queryId being requested\n @param _timestamp to retrieve data/value from\n @return bytes value for query/timestamp submitted" - }, - "functionSelector": "c5958af9", - "id": 1657, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "retrieveData", - "nameLocation": "8122:12:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1626, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1623, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "8143:8:1", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "8135:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1622, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8135:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1625, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "8161:10:1", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "8153:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1624, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8153:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8134:38:1" - }, - "returnParameters": { - "id": 1629, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1628, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "8218:12:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1627, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8218:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8217:14:1" - }, - "scope": 1658, - "src": "8113:505:1", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - } - ], - "scope": 1659, - "src": "247:8373:1" - } - ], - "src": "32:8589:1" - }, - "id": 1 - }, - "contracts/interface/ITellor.sol": { - "ast": { - "absolutePath": "contracts/interface/ITellor.sol", - "exportedSymbols": { - "ITellor": [ - 2435 - ] - }, - "id": 2436, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1660, - "literals": [ - "solidity", - ">=", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:24:2" - }, - { - "abstract": false, - "baseContracts": [], - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 2435, - "linearizedBaseContracts": [ - 2435 - ], - "name": "ITellor", - "nameLocation": "68:7:2", - "nodeType": "ContractDefinition", - "nodes": [ - { - "functionSelector": "699f200f", - "id": 1667, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addresses", - "nameLocation": "107:9:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1663, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1662, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1667, - "src": "117:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1661, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "117:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "116:9:2" - }, - "returnParameters": { - "id": 1666, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1665, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1667, - "src": "148:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1664, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "148:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "147:9:2" - }, - "scope": 2435, - "src": "98:59:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "b59e14d4", - "id": 1674, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "uints", - "nameLocation": "171:5:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1670, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1669, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1674, - "src": "177:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1668, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "177:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "176:9:2" - }, - "returnParameters": { - "id": 1673, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1672, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1674, - "src": "208:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1671, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "208:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "207:9:2" - }, - "scope": 2435, - "src": "162:55:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "42966c68", - "id": 1679, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "burn", - "nameLocation": "231:4:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1677, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1676, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "244:7:2", - "nodeType": "VariableDeclaration", - "scope": 1679, - "src": "236:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1675, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "236:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "235:17:2" - }, - "returnParameters": { - "id": 1678, - "nodeType": "ParameterList", - "parameters": [], - "src": "261:0:2" - }, - "scope": 2435, - "src": "222:40:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "47abd7f1", - "id": 1684, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeDeity", - "nameLocation": "276:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1682, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1681, - "mutability": "mutable", - "name": "_newDeity", - "nameLocation": "296:9:2", - "nodeType": "VariableDeclaration", - "scope": 1684, - "src": "288:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1680, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "288:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "287:19:2" - }, - "returnParameters": { - "id": 1683, - "nodeType": "ParameterList", - "parameters": [], - "src": "315:0:2" - }, - "scope": 2435, - "src": "267:49:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a6f9dae1", - "id": 1689, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeOwner", - "nameLocation": "330:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1687, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1686, - "mutability": "mutable", - "name": "_newOwner", - "nameLocation": "350:9:2", - "nodeType": "VariableDeclaration", - "scope": 1689, - "src": "342:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1685, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "342:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "341:19:2" - }, - "returnParameters": { - "id": 1688, - "nodeType": "ParameterList", - "parameters": [], - "src": "369:0:2" - }, - "scope": 2435, - "src": "321:49:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ae0a8279", - "id": 1694, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeTellorContract", - "nameLocation": "384:20:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1692, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1691, - "mutability": "mutable", - "name": "_tContract", - "nameLocation": "413:10:2", - "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "405:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1690, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "405:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "404:20:2" - }, - "returnParameters": { - "id": 1693, - "nodeType": "ParameterList", - "parameters": [], - "src": "433:0:2" - }, - "scope": 2435, - "src": "375:59:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3c46a185", - "id": 1699, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeControllerContract", - "nameLocation": "448:24:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1697, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1696, - "mutability": "mutable", - "name": "_newController", - "nameLocation": "481:14:2", - "nodeType": "VariableDeclaration", - "scope": 1699, - "src": "473:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1695, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "473:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "472:24:2" - }, - "returnParameters": { - "id": 1698, - "nodeType": "ParameterList", - "parameters": [], - "src": "505:0:2" - }, - "scope": 2435, - "src": "439:67:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e8ce51d7", - "id": 1704, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeGovernanceContract", - "nameLocation": "520:24:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1702, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1701, - "mutability": "mutable", - "name": "_newGovernance", - "nameLocation": "553:14:2", - "nodeType": "VariableDeclaration", - "scope": 1704, - "src": "545:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1700, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "545:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "544:24:2" - }, - "returnParameters": { - "id": 1703, - "nodeType": "ParameterList", - "parameters": [], - "src": "577:0:2" - }, - "scope": 2435, - "src": "511:67:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1cbd3151", - "id": 1709, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeOracleContract", - "nameLocation": "592:20:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1707, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1706, - "mutability": "mutable", - "name": "_newOracle", - "nameLocation": "621:10:2", - "nodeType": "VariableDeclaration", - "scope": 1709, - "src": "613:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1705, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "613:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "612:20:2" - }, - "returnParameters": { - "id": 1708, - "nodeType": "ParameterList", - "parameters": [], - "src": "641:0:2" - }, - "scope": 2435, - "src": "583:59:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "bd87e0c9", - "id": 1714, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeTreasuryContract", - "nameLocation": "656:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1712, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1711, - "mutability": "mutable", - "name": "_newTreasury", - "nameLocation": "687:12:2", - "nodeType": "VariableDeclaration", - "scope": 1714, - "src": "679:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1710, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "679:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "678:22:2" - }, - "returnParameters": { - "id": 1713, - "nodeType": "ParameterList", - "parameters": [], - "src": "709:0:2" - }, - "scope": 2435, - "src": "647:63:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "740358e6", - "id": 1721, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeUint", - "nameLocation": "724:10:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1719, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1716, - "mutability": "mutable", - "name": "_target", - "nameLocation": "743:7:2", - "nodeType": "VariableDeclaration", - "scope": 1721, - "src": "735:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1715, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "735:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1718, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "760:7:2", - "nodeType": "VariableDeclaration", - "scope": 1721, - "src": "752:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1717, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "752:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "734:34:2" - }, - "returnParameters": { - "id": 1720, - "nodeType": "ParameterList", - "parameters": [], - "src": "777:0:2" - }, - "scope": 2435, - "src": "715:63:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "8fd3ab80", - "id": 1724, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "migrate", - "nameLocation": "792:7:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1722, - "nodeType": "ParameterList", - "parameters": [], - "src": "799:2:2" - }, - "returnParameters": { - "id": 1723, - "nodeType": "ParameterList", - "parameters": [], - "src": "810:0:2" - }, - "scope": 2435, - "src": "783:28:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "40c10f19", - "id": 1731, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "mint", - "nameLocation": "825:4:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1729, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1726, - "mutability": "mutable", - "name": "_reciever", - "nameLocation": "838:9:2", - "nodeType": "VariableDeclaration", - "scope": 1731, - "src": "830:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1725, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "830:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1728, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "857:7:2", - "nodeType": "VariableDeclaration", - "scope": 1731, - "src": "849:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1727, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "849:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "829:36:2" - }, - "returnParameters": { - "id": 1730, - "nodeType": "ParameterList", - "parameters": [], - "src": "874:0:2" - }, - "scope": 2435, - "src": "816:59:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e1c7392a", - "id": 1734, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "init", - "nameLocation": "889:4:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1732, - "nodeType": "ParameterList", - "parameters": [], - "src": "893:2:2" - }, - "returnParameters": { - "id": 1733, - "nodeType": "ParameterList", - "parameters": [], - "src": "904:0:2" - }, - "scope": 2435, - "src": "880:25:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "af0b1327", - "id": 1759, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getAllDisputeVars", - "nameLocation": "919:17:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1737, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1736, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "945:10:2", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "937:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1735, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "937:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "936:20:2" - }, - "returnParameters": { - "id": 1758, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1739, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "980:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1738, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "980:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1741, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "988:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1740, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "988:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1743, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "993:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1742, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "993:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1745, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "998:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1744, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "998:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1747, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "1003:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1746, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1003:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1749, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "1011:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1748, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1011:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1751, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "1019:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1750, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1019:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1755, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "1027:17:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$9_memory_ptr", - "typeString": "uint256[9]" - }, - "typeName": { - "baseType": { - "id": 1752, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1027:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1754, - "length": { - "hexValue": "39", - "id": 1753, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1035:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_9_by_1", - "typeString": "int_const 9" - }, - "value": "9" - }, - "nodeType": "ArrayTypeName", - "src": "1027:10:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$9_storage_ptr", - "typeString": "uint256[9]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1757, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "1045:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1756, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1045:6:2", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "979:73:2" - }, - "scope": 2435, - "src": "910:143:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "da379941", - "id": 1766, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getDisputeIdByDisputeHash", - "nameLocation": "1067:25:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1761, - "mutability": "mutable", - "name": "_hash", - "nameLocation": "1101:5:2", - "nodeType": "VariableDeclaration", - "scope": 1766, - "src": "1093:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1760, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1093:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1092:15:2" - }, - "returnParameters": { - "id": 1765, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1764, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1766, - "src": "1131:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1763, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1131:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1130:9:2" - }, - "scope": 2435, - "src": "1058:82:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "7f6fd5d9", - "id": 1775, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getDisputeUintVars", - "nameLocation": "1154:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1771, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1768, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "1181:10:2", - "nodeType": "VariableDeclaration", - "scope": 1775, - "src": "1173:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1767, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1173:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1770, - "mutability": "mutable", - "name": "_data", - "nameLocation": "1201:5:2", - "nodeType": "VariableDeclaration", - "scope": 1775, - "src": "1193:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1769, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1193:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1172:35:2" - }, - "returnParameters": { - "id": 1774, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1773, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1775, - "src": "1230:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1772, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1230:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1229:9:2" - }, - "scope": 2435, - "src": "1145:94:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3180f8df", - "id": 1784, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getLastNewValueById", - "nameLocation": "1253:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1778, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1777, - "mutability": "mutable", - "name": "_requestId", - "nameLocation": "1281:10:2", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "1273:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1776, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1273:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1272:20:2" - }, - "returnParameters": { - "id": 1783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1780, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "1316:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1779, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1316:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1782, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "1325:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1781, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1325:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1315:15:2" - }, - "scope": 2435, - "src": "1244:87:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "93fa4915", - "id": 1793, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "retrieveData", - "nameLocation": "1345:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1789, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1786, - "mutability": "mutable", - "name": "_requestId", - "nameLocation": "1366:10:2", - "nodeType": "VariableDeclaration", - "scope": 1793, - "src": "1358:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1785, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1358:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1788, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "1386:10:2", - "nodeType": "VariableDeclaration", - "scope": 1793, - "src": "1378:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1787, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1378:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1357:40:2" - }, - "returnParameters": { - "id": 1792, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1791, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1793, - "src": "1421:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1790, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1421:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1420:9:2" - }, - "scope": 2435, - "src": "1336:94:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "46eee1c4", - "id": 1800, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getNewValueCountbyRequestId", - "nameLocation": "1444:27:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1796, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1795, - "mutability": "mutable", - "name": "_requestId", - "nameLocation": "1480:10:2", - "nodeType": "VariableDeclaration", - "scope": 1800, - "src": "1472:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1794, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1472:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1471:20:2" - }, - "returnParameters": { - "id": 1799, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1798, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1800, - "src": "1515:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1797, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1515:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1514:9:2" - }, - "scope": 2435, - "src": "1435:89:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "133bee5e", - "id": 1807, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getAddressVars", - "nameLocation": "1538:14:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1803, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1802, - "mutability": "mutable", - "name": "_data", - "nameLocation": "1561:5:2", - "nodeType": "VariableDeclaration", - "scope": 1807, - "src": "1553:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1801, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1553:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1552:15:2" - }, - "returnParameters": { - "id": 1806, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1805, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1807, - "src": "1591:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1804, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1591:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1590:9:2" - }, - "scope": 2435, - "src": "1529:71:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "612c8f7f", - "id": 1814, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getUintVar", - "nameLocation": "1614:10:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1810, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1809, - "mutability": "mutable", - "name": "_data", - "nameLocation": "1633:5:2", - "nodeType": "VariableDeclaration", - "scope": 1814, - "src": "1625:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1808, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1625:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1624:15:2" - }, - "returnParameters": { - "id": 1813, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1812, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1814, - "src": "1663:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1811, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1663:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1662:9:2" - }, - "scope": 2435, - "src": "1605:67:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "18160ddd", - "id": 1819, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nameLocation": "1686:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1815, - "nodeType": "ParameterList", - "parameters": [], - "src": "1697:2:2" - }, - "returnParameters": { - "id": 1818, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1817, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1723:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1816, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1723:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1722:9:2" - }, - "scope": 2435, - "src": "1677:55:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "06fdde03", - "id": 1824, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "name", - "nameLocation": "1746:4:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1820, - "nodeType": "ParameterList", - "parameters": [], - "src": "1750:2:2" - }, - "returnParameters": { - "id": 1823, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1822, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1824, - "src": "1776:13:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1821, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1776:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1775:15:2" - }, - "scope": 2435, - "src": "1737:54:2", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "95d89b41", - "id": 1829, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nameLocation": "1805:6:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1825, - "nodeType": "ParameterList", - "parameters": [], - "src": "1811:2:2" - }, - "returnParameters": { - "id": 1828, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1827, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1829, - "src": "1837:13:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1826, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1837:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1836:15:2" - }, - "scope": 2435, - "src": "1796:56:2", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "313ce567", - "id": 1834, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "decimals", - "nameLocation": "1866:8:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1830, - "nodeType": "ParameterList", - "parameters": [], - "src": "1874:2:2" - }, - "returnParameters": { - "id": 1833, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1832, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1834, - "src": "1900:5:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 1831, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1900:5:2", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "1899:7:2" - }, - "scope": 2435, - "src": "1857:50:2", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "58421ed2", - "id": 1841, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isMigrated", - "nameLocation": "1921:10:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1837, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1836, - "mutability": "mutable", - "name": "_addy", - "nameLocation": "1940:5:2", - "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "1932:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1835, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1932:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1931:15:2" - }, - "returnParameters": { - "id": 1840, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1839, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "1970:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1838, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1970:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1969:6:2" - }, - "scope": 2435, - "src": "1912:64:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "dd62ed3e", - "id": 1850, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "allowance", - "nameLocation": "1990:9:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1846, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1843, - "mutability": "mutable", - "name": "_user", - "nameLocation": "2008:5:2", - "nodeType": "VariableDeclaration", - "scope": 1850, - "src": "2000:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1842, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2000:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1845, - "mutability": "mutable", - "name": "_spender", - "nameLocation": "2023:8:2", - "nodeType": "VariableDeclaration", - "scope": 1850, - "src": "2015:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1844, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2015:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1999:33:2" - }, - "returnParameters": { - "id": 1849, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1848, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1850, - "src": "2057:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1847, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2057:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2056:9:2" - }, - "scope": 2435, - "src": "1981:85:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "999cf26c", - "id": 1859, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "allowedToTrade", - "nameLocation": "2080:14:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1855, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1852, - "mutability": "mutable", - "name": "_user", - "nameLocation": "2103:5:2", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "2095:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1851, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2095:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1854, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "2118:7:2", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "2110:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1853, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2110:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2094:32:2" - }, - "returnParameters": { - "id": 1858, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1857, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "2150:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1856, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2150:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2149:6:2" - }, - "scope": 2435, - "src": "2071:85:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "095ea7b3", - "id": 1868, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "2170:7:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1864, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1861, - "mutability": "mutable", - "name": "_spender", - "nameLocation": "2186:8:2", - "nodeType": "VariableDeclaration", - "scope": 1868, - "src": "2178:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1860, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2178:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1863, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "2204:7:2", - "nodeType": "VariableDeclaration", - "scope": 1868, - "src": "2196:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1862, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2196:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2177:35:2" - }, - "returnParameters": { - "id": 1867, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1866, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1868, - "src": "2231:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1865, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2231:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2230:6:2" - }, - "scope": 2435, - "src": "2161:76:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "288c9c9d", - "id": 1879, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approveAndTransferFrom", - "nameLocation": "2251:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1875, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1870, - "mutability": "mutable", - "name": "_from", - "nameLocation": "2282:5:2", - "nodeType": "VariableDeclaration", - "scope": 1879, - "src": "2274:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1869, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2274:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1872, - "mutability": "mutable", - "name": "_to", - "nameLocation": "2297:3:2", - "nodeType": "VariableDeclaration", - "scope": 1879, - "src": "2289:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1871, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2289:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1874, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "2310:7:2", - "nodeType": "VariableDeclaration", - "scope": 1879, - "src": "2302:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1873, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2302:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2273:45:2" - }, - "returnParameters": { - "id": 1878, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1877, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1879, - "src": "2336:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1876, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2336:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2335:6:2" - }, - "scope": 2435, - "src": "2242:100:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "70a08231", - "id": 1886, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "2356:9:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1882, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1881, - "mutability": "mutable", - "name": "_user", - "nameLocation": "2374:5:2", - "nodeType": "VariableDeclaration", - "scope": 1886, - "src": "2366:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1880, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2366:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2365:15:2" - }, - "returnParameters": { - "id": 1885, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1884, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1886, - "src": "2404:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1883, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2404:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2403:9:2" - }, - "scope": 2435, - "src": "2347:66:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4ee2cd7e", - "id": 1895, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOfAt", - "nameLocation": "2427:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1891, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1888, - "mutability": "mutable", - "name": "_user", - "nameLocation": "2447:5:2", - "nodeType": "VariableDeclaration", - "scope": 1895, - "src": "2439:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1887, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2439:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1890, - "mutability": "mutable", - "name": "_blockNumber", - "nameLocation": "2462:12:2", - "nodeType": "VariableDeclaration", - "scope": 1895, - "src": "2454:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1889, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2454:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2438:37:2" - }, - "returnParameters": { - "id": 1894, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1893, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1895, - "src": "2498:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1892, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2498:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2497:9:2" - }, - "scope": 2435, - "src": "2418:89:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a9059cbb", - "id": 1904, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nameLocation": "2521:8:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1900, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1897, - "mutability": "mutable", - "name": "_to", - "nameLocation": "2538:3:2", - "nodeType": "VariableDeclaration", - "scope": 1904, - "src": "2530:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1896, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2530:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1899, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "2551:7:2", - "nodeType": "VariableDeclaration", - "scope": 1904, - "src": "2543:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1898, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2543:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2529:30:2" - }, - "returnParameters": { - "id": 1903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1902, - "mutability": "mutable", - "name": "success", - "nameLocation": "2582:7:2", - "nodeType": "VariableDeclaration", - "scope": 1904, - "src": "2577:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1901, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2577:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2576:14:2" - }, - "scope": 2435, - "src": "2512:79:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "23b872dd", - "id": 1915, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "2605:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1911, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1906, - "mutability": "mutable", - "name": "_from", - "nameLocation": "2626:5:2", - "nodeType": "VariableDeclaration", - "scope": 1915, - "src": "2618:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1905, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2618:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1908, - "mutability": "mutable", - "name": "_to", - "nameLocation": "2640:3:2", - "nodeType": "VariableDeclaration", - "scope": 1915, - "src": "2632:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1907, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2632:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1910, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "2652:7:2", - "nodeType": "VariableDeclaration", - "scope": 1915, - "src": "2644:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1909, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2644:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2617:43:2" - }, - "returnParameters": { - "id": 1914, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1913, - "mutability": "mutable", - "name": "success", - "nameLocation": "2684:7:2", - "nodeType": "VariableDeclaration", - "scope": 1915, - "src": "2679:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1912, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2679:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2678:14:2" - }, - "scope": 2435, - "src": "2596:98:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0d2d76a2", - "id": 1918, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "depositStake", - "nameLocation": "2708:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1916, - "nodeType": "ParameterList", - "parameters": [], - "src": "2720:2:2" - }, - "returnParameters": { - "id": 1917, - "nodeType": "ParameterList", - "parameters": [], - "src": "2731:0:2" - }, - "scope": 2435, - "src": "2699:33:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "28449c3a", - "id": 1921, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "requestStakingWithdraw", - "nameLocation": "2746:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1919, - "nodeType": "ParameterList", - "parameters": [], - "src": "2768:2:2" - }, - "returnParameters": { - "id": 1920, - "nodeType": "ParameterList", - "parameters": [], - "src": "2779:0:2" - }, - "scope": 2435, - "src": "2737:43:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "bed9d861", - "id": 1924, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "withdrawStake", - "nameLocation": "2794:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1922, - "nodeType": "ParameterList", - "parameters": [], - "src": "2807:2:2" - }, - "returnParameters": { - "id": 1923, - "nodeType": "ParameterList", - "parameters": [], - "src": "2818:0:2" - }, - "scope": 2435, - "src": "2785:34:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a1332c5c", - "id": 1931, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeStakingStatus", - "nameLocation": "2833:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1929, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1926, - "mutability": "mutable", - "name": "_reporter", - "nameLocation": "2861:9:2", - "nodeType": "VariableDeclaration", - "scope": 1931, - "src": "2853:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1925, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2853:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1928, - "mutability": "mutable", - "name": "_status", - "nameLocation": "2877:7:2", - "nodeType": "VariableDeclaration", - "scope": 1931, - "src": "2872:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1927, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2872:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2852:33:2" - }, - "returnParameters": { - "id": 1930, - "nodeType": "ParameterList", - "parameters": [], - "src": "2894:0:2" - }, - "scope": 2435, - "src": "2824:71:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4dfc2a34", - "id": 1938, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "slashReporter", - "nameLocation": "2909:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1936, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1933, - "mutability": "mutable", - "name": "_reporter", - "nameLocation": "2931:9:2", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "2923:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1932, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2923:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1935, - "mutability": "mutable", - "name": "_disputer", - "nameLocation": "2950:9:2", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "2942:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1934, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2942:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2922:38:2" - }, - "returnParameters": { - "id": 1937, - "nodeType": "ParameterList", - "parameters": [], - "src": "2969:0:2" - }, - "scope": 2435, - "src": "2900:70:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "733bdef0", - "id": 1947, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getStakerInfo", - "nameLocation": "2984:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1941, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1940, - "mutability": "mutable", - "name": "_staker", - "nameLocation": "3006:7:2", - "nodeType": "VariableDeclaration", - "scope": 1947, - "src": "2998:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1939, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2998:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2997:17:2" - }, - "returnParameters": { - "id": 1946, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1943, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1947, - "src": "3038:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1942, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3038:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1945, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1947, - "src": "3047:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1944, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3047:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3037:18:2" - }, - "scope": 2435, - "src": "2975:81:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "77fbb663", - "id": 1956, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTimestampbyRequestIDandIndex", - "nameLocation": "3070:31:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1949, - "mutability": "mutable", - "name": "_requestId", - "nameLocation": "3110:10:2", - "nodeType": "VariableDeclaration", - "scope": 1956, - "src": "3102:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1948, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3102:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1951, - "mutability": "mutable", - "name": "_index", - "nameLocation": "3130:6:2", - "nodeType": "VariableDeclaration", - "scope": 1956, - "src": "3122:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1950, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3122:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3101:36:2" - }, - "returnParameters": { - "id": 1955, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1954, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1956, - "src": "3161:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1953, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3161:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3160:9:2" - }, - "scope": 2435, - "src": "3061:109:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4049f198", - "id": 1969, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getNewCurrentVariables", - "nameLocation": "3184:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1957, - "nodeType": "ParameterList", - "parameters": [], - "src": "3206:2:2" - }, - "returnParameters": { - "id": 1968, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1959, - "mutability": "mutable", - "name": "_c", - "nameLocation": "3239:2:2", - "nodeType": "VariableDeclaration", - "scope": 1969, - "src": "3231:10:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1958, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3231:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1963, - "mutability": "mutable", - "name": "_r", - "nameLocation": "3260:2:2", - "nodeType": "VariableDeclaration", - "scope": 1969, - "src": "3242:20:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$5_memory_ptr", - "typeString": "uint256[5]" - }, - "typeName": { - "baseType": { - "id": 1960, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3242:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1962, - "length": { - "hexValue": "35", - "id": 1961, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3250:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" - }, - "value": "5" - }, - "nodeType": "ArrayTypeName", - "src": "3242:10:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$5_storage_ptr", - "typeString": "uint256[5]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1965, - "mutability": "mutable", - "name": "_d", - "nameLocation": "3271:2:2", - "nodeType": "VariableDeclaration", - "scope": 1969, - "src": "3263:10:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1964, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3263:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1967, - "mutability": "mutable", - "name": "_t", - "nameLocation": "3282:2:2", - "nodeType": "VariableDeclaration", - "scope": 1969, - "src": "3274:10:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1966, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3274:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3230:55:2" - }, - "scope": 2435, - "src": "3175:111:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "77b03e0d", - "id": 1976, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getNewValueCountbyQueryId", - "nameLocation": "3300:25:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1972, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1971, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "3334:8:2", - "nodeType": "VariableDeclaration", - "scope": 1976, - "src": "3326:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1970, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3326:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3325:18:2" - }, - "returnParameters": { - "id": 1975, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1974, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1976, - "src": "3366:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1973, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3366:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3365:9:2" - }, - "scope": 2435, - "src": "3291:84:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ce5e11bf", - "id": 1985, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTimestampbyQueryIdandIndex", - "nameLocation": "3389:29:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1981, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1978, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "3427:8:2", - "nodeType": "VariableDeclaration", - "scope": 1985, - "src": "3419:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1977, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3419:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1980, - "mutability": "mutable", - "name": "_index", - "nameLocation": "3445:6:2", - "nodeType": "VariableDeclaration", - "scope": 1985, - "src": "3437:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1979, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3437:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3418:34:2" - }, - "returnParameters": { - "id": 1984, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1983, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1985, - "src": "3475:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1982, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3475:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3474:9:2" - }, - "scope": 2435, - "src": "3380:104:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "c5958af9", - "id": 1994, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "retrieveData", - "nameLocation": "3498:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1990, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1987, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "3519:8:2", - "nodeType": "VariableDeclaration", - "scope": 1994, - "src": "3511:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1986, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3511:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1989, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "3537:10:2", - "nodeType": "VariableDeclaration", - "scope": 1994, - "src": "3529:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1988, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3529:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3510:38:2" - }, - "returnParameters": { - "id": 1993, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1992, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1994, - "src": "3571:12:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1991, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3571:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3570:14:2" - }, - "scope": 2435, - "src": "3489:96:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "canonicalName": "ITellor.VoteResult", - "id": 1998, - "members": [ - { - "id": 1995, - "name": "FAILED", - "nameLocation": "3624:6:2", - "nodeType": "EnumValue", - "src": "3624:6:2" - }, - { - "id": 1996, - "name": "PASSED", - "nameLocation": "3631:6:2", - "nodeType": "EnumValue", - "src": "3631:6:2" - }, - { - "id": 1997, - "name": "INVALID", - "nameLocation": "3638:7:2", - "nodeType": "EnumValue", - "src": "3638:7:2" - } - ], - "name": "VoteResult", - "nameLocation": "3612:10:2", - "nodeType": "EnumDefinition", - "src": "3607:39:2" - }, - { - "functionSelector": "e48d4b3b", - "id": 2005, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setApprovedFunction", - "nameLocation": "3660:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2003, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2000, - "mutability": "mutable", - "name": "_func", - "nameLocation": "3687:5:2", - "nodeType": "VariableDeclaration", - "scope": 2005, - "src": "3680:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1999, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "3680:6:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2002, - "mutability": "mutable", - "name": "_val", - "nameLocation": "3699:4:2", - "nodeType": "VariableDeclaration", - "scope": 2005, - "src": "3694:9:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2001, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3694:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3679:25:2" - }, - "returnParameters": { - "id": 2004, - "nodeType": "ParameterList", - "parameters": [], - "src": "3713:0:2" - }, - "scope": 2435, - "src": "3651:63:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1f379acc", - "id": 2012, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "beginDispute", - "nameLocation": "3728:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2010, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2007, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "3749:8:2", - "nodeType": "VariableDeclaration", - "scope": 2012, - "src": "3741:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2006, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3741:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2009, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "3766:10:2", - "nodeType": "VariableDeclaration", - "scope": 2012, - "src": "3758:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2008, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3758:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3740:37:2" - }, - "returnParameters": { - "id": 2011, - "nodeType": "ParameterList", - "parameters": [], - "src": "3786:0:2" - }, - "scope": 2435, - "src": "3719:68:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5c19a95c", - "id": 2017, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "delegate", - "nameLocation": "3801:8:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2015, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2014, - "mutability": "mutable", - "name": "_delegate", - "nameLocation": "3818:9:2", - "nodeType": "VariableDeclaration", - "scope": 2017, - "src": "3810:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2013, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3810:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3809:19:2" - }, - "returnParameters": { - "id": 2016, - "nodeType": "ParameterList", - "parameters": [], - "src": "3837:0:2" - }, - "scope": 2435, - "src": "3792:46:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "b3427a2b", - "id": 2026, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "delegateOfAt", - "nameLocation": "3852:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2022, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2019, - "mutability": "mutable", - "name": "_user", - "nameLocation": "3873:5:2", - "nodeType": "VariableDeclaration", - "scope": 2026, - "src": "3865:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2018, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3865:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2021, - "mutability": "mutable", - "name": "_blockNumber", - "nameLocation": "3888:12:2", - "nodeType": "VariableDeclaration", - "scope": 2026, - "src": "3880:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2020, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3880:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3864:37:2" - }, - "returnParameters": { - "id": 2025, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2024, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2026, - "src": "3925:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2023, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3925:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3924:9:2" - }, - "scope": 2435, - "src": "3843:91:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "f98a4eca", - "id": 2031, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "executeVote", - "nameLocation": "3948:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2029, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2028, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "3968:10:2", - "nodeType": "VariableDeclaration", - "scope": 2031, - "src": "3960:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2027, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3960:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3959:20:2" - }, - "returnParameters": { - "id": 2030, - "nodeType": "ParameterList", - "parameters": [], - "src": "3988:0:2" - }, - "scope": 2435, - "src": "3939:50:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0b5e95c3", - "id": 2042, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "proposeVote", - "nameLocation": "4003:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2040, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2033, - "mutability": "mutable", - "name": "_contract", - "nameLocation": "4023:9:2", - "nodeType": "VariableDeclaration", - "scope": 2042, - "src": "4015:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2032, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4015:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2035, - "mutability": "mutable", - "name": "_function", - "nameLocation": "4040:9:2", - "nodeType": "VariableDeclaration", - "scope": 2042, - "src": "4033:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 2034, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "4033:6:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2037, - "mutability": "mutable", - "name": "_data", - "nameLocation": "4066:5:2", - "nodeType": "VariableDeclaration", - "scope": 2042, - "src": "4051:20:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2036, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4051:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2039, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "4081:10:2", - "nodeType": "VariableDeclaration", - "scope": 2042, - "src": "4073:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2038, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4073:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4014:78:2" - }, - "returnParameters": { - "id": 2041, - "nodeType": "ParameterList", - "parameters": [], - "src": "4101:0:2" - }, - "scope": 2435, - "src": "3994:108:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4d318b0e", - "id": 2047, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tallyVotes", - "nameLocation": "4116:10:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2044, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "4135:10:2", - "nodeType": "VariableDeclaration", - "scope": 2047, - "src": "4127:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4127:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4126:20:2" - }, - "returnParameters": { - "id": 2046, - "nodeType": "ParameterList", - "parameters": [], - "src": "4155:0:2" - }, - "scope": 2435, - "src": "4107:49:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5aa6e675", - "id": 2052, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "governance", - "nameLocation": "4170:10:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2048, - "nodeType": "ParameterList", - "parameters": [], - "src": "4180:2:2" - }, - "returnParameters": { - "id": 2051, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2050, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2052, - "src": "4206:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2049, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4206:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4205:9:2" - }, - "scope": 2435, - "src": "4161:54:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "90e5b235", - "id": 2055, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "updateMinDisputeFee", - "nameLocation": "4229:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2053, - "nodeType": "ParameterList", - "parameters": [], - "src": "4248:2:2" - }, - "returnParameters": { - "id": 2054, - "nodeType": "ParameterList", - "parameters": [], - "src": "4259:0:2" - }, - "scope": 2435, - "src": "4220:40:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "fc735e99", - "id": 2060, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "verify", - "nameLocation": "4274:6:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2056, - "nodeType": "ParameterList", - "parameters": [], - "src": "4280:2:2" - }, - "returnParameters": { - "id": 2059, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2058, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2060, - "src": "4305:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2057, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4305:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4304:6:2" - }, - "scope": 2435, - "src": "4265:46:2", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "df133bca", - "id": 2069, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "vote", - "nameLocation": "4325:4:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2067, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2062, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "4338:10:2", - "nodeType": "VariableDeclaration", - "scope": 2069, - "src": "4330:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2061, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4330:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2064, - "mutability": "mutable", - "name": "_supports", - "nameLocation": "4355:9:2", - "nodeType": "VariableDeclaration", - "scope": 2069, - "src": "4350:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2063, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4350:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2066, - "mutability": "mutable", - "name": "_invalidQuery", - "nameLocation": "4371:13:2", - "nodeType": "VariableDeclaration", - "scope": 2069, - "src": "4366:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2065, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4366:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4329:56:2" - }, - "returnParameters": { - "id": 2068, - "nodeType": "ParameterList", - "parameters": [], - "src": "4394:0:2" - }, - "scope": 2435, - "src": "4316:79:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e5d91314", - "id": 2081, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "voteFor", - "nameLocation": "4409:7:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2079, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2072, - "mutability": "mutable", - "name": "_addys", - "nameLocation": "4436:6:2", - "nodeType": "VariableDeclaration", - "scope": 2081, - "src": "4417:25:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 2070, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4417:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2071, - "nodeType": "ArrayTypeName", - "src": "4417:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2074, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "4451:10:2", - "nodeType": "VariableDeclaration", - "scope": 2081, - "src": "4443:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2073, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4443:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2076, - "mutability": "mutable", - "name": "_supports", - "nameLocation": "4468:9:2", - "nodeType": "VariableDeclaration", - "scope": 2081, - "src": "4463:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2075, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4463:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2078, - "mutability": "mutable", - "name": "_invalidQuery", - "nameLocation": "4484:13:2", - "nodeType": "VariableDeclaration", - "scope": 2081, - "src": "4479:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2077, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4479:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4416:82:2" - }, - "returnParameters": { - "id": 2080, - "nodeType": "ParameterList", - "parameters": [], - "src": "4507:0:2" - }, - "scope": 2435, - "src": "4400:108:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "10c67e1c", - "id": 2090, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getDelegateInfo", - "nameLocation": "4522:15:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2084, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2083, - "mutability": "mutable", - "name": "_holder", - "nameLocation": "4546:7:2", - "nodeType": "VariableDeclaration", - "scope": 2090, - "src": "4538:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2082, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4538:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4537:17:2" - }, - "returnParameters": { - "id": 2089, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2086, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2090, - "src": "4577:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2085, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4577:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2088, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2090, - "src": "4585:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2087, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4585:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4576:14:2" - }, - "scope": 2435, - "src": "4513:78:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "2d2506a9", - "id": 2097, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isFunctionApproved", - "nameLocation": "4605:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2093, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2092, - "mutability": "mutable", - "name": "_func", - "nameLocation": "4631:5:2", - "nodeType": "VariableDeclaration", - "scope": 2097, - "src": "4624:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 2091, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "4624:6:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "4623:14:2" - }, - "returnParameters": { - "id": 2096, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2095, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2097, - "src": "4660:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2094, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4660:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4659:6:2" - }, - "scope": 2435, - "src": "4596:70:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "fd3171b2", - "id": 2104, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isApprovedGovernanceContract", - "nameLocation": "4680:28:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2100, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2099, - "mutability": "mutable", - "name": "_contract", - "nameLocation": "4717:9:2", - "nodeType": "VariableDeclaration", - "scope": 2104, - "src": "4709:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2098, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4709:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4708:19:2" - }, - "returnParameters": { - "id": 2103, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2102, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2104, - "src": "4746:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2101, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4746:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4745:6:2" - }, - "scope": 2435, - "src": "4671:81:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "248638e5", - "id": 2112, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getVoteRounds", - "nameLocation": "4766:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2107, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2106, - "mutability": "mutable", - "name": "_hash", - "nameLocation": "4788:5:2", - "nodeType": "VariableDeclaration", - "scope": 2112, - "src": "4780:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2105, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4780:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4779:15:2" - }, - "returnParameters": { - "id": 2111, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2110, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2112, - "src": "4817:16:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 2108, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4817:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2109, - "nodeType": "ArrayTypeName", - "src": "4817:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "4816:18:2" - }, - "scope": 2435, - "src": "4757:78:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e7b3387c", - "id": 2117, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getVoteCount", - "nameLocation": "4849:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2113, - "nodeType": "ParameterList", - "parameters": [], - "src": "4861:2:2" - }, - "returnParameters": { - "id": 2116, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2115, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2117, - "src": "4886:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2114, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4886:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4885:9:2" - }, - "scope": 2435, - "src": "4840:55:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "8d824273", - "id": 2143, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getVoteInfo", - "nameLocation": "4909:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2120, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2119, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "4929:10:2", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "4921:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2118, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4921:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4920:20:2" - }, - "returnParameters": { - "id": 2142, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2122, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "4963:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2121, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4963:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2126, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "4971:17:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$9_memory_ptr", - "typeString": "uint256[9]" - }, - "typeName": { - "baseType": { - "id": 2123, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4971:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2125, - "length": { - "hexValue": "39", - "id": 2124, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4979:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_9_by_1", - "typeString": "int_const 9" - }, - "value": "9" - }, - "nodeType": "ArrayTypeName", - "src": "4971:10:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$9_storage_ptr", - "typeString": "uint256[9]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2130, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "4989:14:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bool_$2_memory_ptr", - "typeString": "bool[2]" - }, - "typeName": { - "baseType": { - "id": 2127, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4989:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2129, - "length": { - "hexValue": "32", - "id": 2128, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4994:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "ArrayTypeName", - "src": "4989:7:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bool_$2_storage_ptr", - "typeString": "bool[2]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2133, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "5004:10:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_enum$_VoteResult_$1998", - "typeString": "enum ITellor.VoteResult" - }, - "typeName": { - "id": 2132, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2131, - "name": "VoteResult", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1998, - "src": "5004:10:2" - }, - "referencedDeclaration": 1998, - "src": "5004:10:2", - "typeDescriptions": { - "typeIdentifier": "t_enum$_VoteResult_$1998", - "typeString": "enum ITellor.VoteResult" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2135, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "5015:12:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2134, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5015:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2137, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "5028:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 2136, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "5028:6:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2141, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2143, - "src": "5035:17:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$2_memory_ptr", - "typeString": "address[2]" - }, - "typeName": { - "baseType": { - "id": 2138, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5035:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2140, - "length": { - "hexValue": "32", - "id": 2139, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5043:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "ArrayTypeName", - "src": "5035:10:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$2_storage_ptr", - "typeString": "address[2]" - } - }, - "visibility": "internal" - } - ], - "src": "4962:91:2" - }, - "scope": 2435, - "src": "4900:154:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6169c308", - "id": 2156, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getDisputeInfo", - "nameLocation": "5068:14:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2146, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2145, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "5091:10:2", - "nodeType": "VariableDeclaration", - "scope": 2156, - "src": "5083:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2144, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5083:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5082:20:2" - }, - "returnParameters": { - "id": 2155, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2148, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2156, - "src": "5125:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2147, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5125:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2150, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2156, - "src": "5133:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2149, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5133:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2152, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2156, - "src": "5141:12:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2151, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5141:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2154, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2156, - "src": "5155:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2153, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5155:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "5124:39:2" - }, - "scope": 2435, - "src": "5059:105:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0e1596ef", - "id": 2163, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getOpenDisputesOnId", - "nameLocation": "5178:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2159, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2158, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5206:8:2", - "nodeType": "VariableDeclaration", - "scope": 2163, - "src": "5198:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2157, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5198:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5197:18:2" - }, - "returnParameters": { - "id": 2162, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2161, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2163, - "src": "5238:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2160, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5238:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5237:9:2" - }, - "scope": 2435, - "src": "5169:78:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a7c438bc", - "id": 2172, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "didVote", - "nameLocation": "5261:7:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2168, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2165, - "mutability": "mutable", - "name": "_disputeId", - "nameLocation": "5277:10:2", - "nodeType": "VariableDeclaration", - "scope": 2172, - "src": "5269:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2164, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5269:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2167, - "mutability": "mutable", - "name": "_voter", - "nameLocation": "5297:6:2", - "nodeType": "VariableDeclaration", - "scope": 2172, - "src": "5289:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2166, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5289:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "5268:36:2" - }, - "returnParameters": { - "id": 2171, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2170, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2172, - "src": "5327:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2169, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5327:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "5326:6:2" - }, - "scope": 2435, - "src": "5252:81:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "7c37b8b4", - "id": 2181, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getReportTimestampByIndex", - "nameLocation": "5360:25:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2177, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2174, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5394:8:2", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "5386:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2173, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5386:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2176, - "mutability": "mutable", - "name": "_index", - "nameLocation": "5412:6:2", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "5404:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2175, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5404:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5385:34:2" - }, - "returnParameters": { - "id": 2180, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2179, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "5442:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2178, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5442:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5441:9:2" - }, - "scope": 2435, - "src": "5351:100:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0b2d2b0d", - "id": 2190, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getValueByTimestamp", - "nameLocation": "5465:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2186, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2183, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5493:8:2", - "nodeType": "VariableDeclaration", - "scope": 2190, - "src": "5485:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2182, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5485:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2185, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "5511:10:2", - "nodeType": "VariableDeclaration", - "scope": 2190, - "src": "5503:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2184, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5503:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5484:38:2" - }, - "returnParameters": { - "id": 2189, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2188, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2190, - "src": "5545:12:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2187, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5545:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5544:14:2" - }, - "scope": 2435, - "src": "5456:103:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "935408d0", - "id": 2199, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBlockNumberByTimestamp", - "nameLocation": "5573:25:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2195, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2192, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5607:8:2", - "nodeType": "VariableDeclaration", - "scope": 2199, - "src": "5599:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2191, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5599:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2194, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "5625:10:2", - "nodeType": "VariableDeclaration", - "scope": 2199, - "src": "5617:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2193, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5617:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5598:38:2" - }, - "returnParameters": { - "id": 2198, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2197, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2199, - "src": "5659:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2196, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5659:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5658:9:2" - }, - "scope": 2435, - "src": "5564:104:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "460c33a2", - "id": 2204, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getReportingLock", - "nameLocation": "5682:16:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2200, - "nodeType": "ParameterList", - "parameters": [], - "src": "5698:2:2" - }, - "returnParameters": { - "id": 2203, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2202, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2204, - "src": "5723:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2201, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5723:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5722:9:2" - }, - "scope": 2435, - "src": "5673:59:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e07c5486", - "id": 2213, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getReporterByTimestamp", - "nameLocation": "5746:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2209, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2206, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5777:8:2", - "nodeType": "VariableDeclaration", - "scope": 2213, - "src": "5769:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2205, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5769:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2208, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "5795:10:2", - "nodeType": "VariableDeclaration", - "scope": 2213, - "src": "5787:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2207, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5787:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5768:38:2" - }, - "returnParameters": { - "id": 2212, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2211, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2213, - "src": "5829:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2210, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5829:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "5828:9:2" - }, - "scope": 2435, - "src": "5737:101:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3321fc41", - "id": 2218, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "reportingLock", - "nameLocation": "5852:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2214, - "nodeType": "ParameterList", - "parameters": [], - "src": "5865:2:2" - }, - "returnParameters": { - "id": 2217, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2216, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2218, - "src": "5890:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2215, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5890:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5889:9:2" - }, - "scope": 2435, - "src": "5843:56:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5b5edcfc", - "id": 2225, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "removeValue", - "nameLocation": "5913:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2223, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2220, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "5933:8:2", - "nodeType": "VariableDeclaration", - "scope": 2225, - "src": "5925:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2219, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5925:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2222, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "5951:10:2", - "nodeType": "VariableDeclaration", - "scope": 2225, - "src": "5943:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2221, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5943:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5924:38:2" - }, - "returnParameters": { - "id": 2224, - "nodeType": "ParameterList", - "parameters": [], - "src": "5971:0:2" - }, - "scope": 2435, - "src": "5904:68:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3878293e", - "id": 2232, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getReportsSubmittedByAddress", - "nameLocation": "5986:28:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2228, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2227, - "mutability": "mutable", - "name": "_reporter", - "nameLocation": "6023:9:2", - "nodeType": "VariableDeclaration", - "scope": 2232, - "src": "6015:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2226, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6015:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "6014:19:2" - }, - "returnParameters": { - "id": 2231, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2230, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2232, - "src": "6056:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2229, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6056:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6055:9:2" - }, - "scope": 2435, - "src": "5977:88:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "b736ec36", - "id": 2239, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTipsByUser", - "nameLocation": "6079:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2235, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2234, - "mutability": "mutable", - "name": "_user", - "nameLocation": "6101:5:2", - "nodeType": "VariableDeclaration", - "scope": 2239, - "src": "6093:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2233, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6093:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "6092:15:2" - }, - "returnParameters": { - "id": 2238, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2237, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2239, - "src": "6130:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2236, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6130:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6129:9:2" - }, - "scope": 2435, - "src": "6070:69:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ef0234ad", - "id": 2248, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tipQuery", - "nameLocation": "6153:8:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2246, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2241, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6170:8:2", - "nodeType": "VariableDeclaration", - "scope": 2248, - "src": "6162:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2240, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6162:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2243, - "mutability": "mutable", - "name": "_tip", - "nameLocation": "6188:4:2", - "nodeType": "VariableDeclaration", - "scope": 2248, - "src": "6180:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2242, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6180:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2245, - "mutability": "mutable", - "name": "_queryData", - "nameLocation": "6207:10:2", - "nodeType": "VariableDeclaration", - "scope": 2248, - "src": "6194:23:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2244, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6194:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6161:57:2" - }, - "returnParameters": { - "id": 2247, - "nodeType": "ParameterList", - "parameters": [], - "src": "6227:0:2" - }, - "scope": 2435, - "src": "6144:84:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5eaa9ced", - "id": 2259, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "submitValue", - "nameLocation": "6242:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2257, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2250, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6262:8:2", - "nodeType": "VariableDeclaration", - "scope": 2259, - "src": "6254:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2249, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6254:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2252, - "mutability": "mutable", - "name": "_value", - "nameLocation": "6287:6:2", - "nodeType": "VariableDeclaration", - "scope": 2259, - "src": "6272:21:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2251, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6272:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2254, - "mutability": "mutable", - "name": "_nonce", - "nameLocation": "6303:6:2", - "nodeType": "VariableDeclaration", - "scope": 2259, - "src": "6295:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2253, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6295:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2256, - "mutability": "mutable", - "name": "_queryData", - "nameLocation": "6324:10:2", - "nodeType": "VariableDeclaration", - "scope": 2259, - "src": "6311:23:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2255, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6311:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6253:82:2" - }, - "returnParameters": { - "id": 2258, - "nodeType": "ParameterList", - "parameters": [], - "src": "6344:0:2" - }, - "scope": 2435, - "src": "6233:112:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "df0a6eb7", - "id": 2262, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "burnTips", - "nameLocation": "6359:8:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2260, - "nodeType": "ParameterList", - "parameters": [], - "src": "6367:2:2" - }, - "returnParameters": { - "id": 2261, - "nodeType": "ParameterList", - "parameters": [], - "src": "6378:0:2" - }, - "scope": 2435, - "src": "6350:29:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5d183cfa", - "id": 2267, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeReportingLock", - "nameLocation": "6393:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2265, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2264, - "mutability": "mutable", - "name": "_newReportingLock", - "nameLocation": "6421:17:2", - "nodeType": "VariableDeclaration", - "scope": 2267, - "src": "6413:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2263, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6413:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6412:27:2" - }, - "returnParameters": { - "id": 2266, - "nodeType": "ParameterList", - "parameters": [], - "src": "6448:0:2" - }, - "scope": 2435, - "src": "6384:65:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6d53585f", - "id": 2272, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeTimeBasedReward", - "nameLocation": "6463:21:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2270, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2269, - "mutability": "mutable", - "name": "_newTimeBasedReward", - "nameLocation": "6493:19:2", - "nodeType": "VariableDeclaration", - "scope": 2272, - "src": "6485:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2268, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6485:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6484:29:2" - }, - "returnParameters": { - "id": 2271, - "nodeType": "ParameterList", - "parameters": [], - "src": "6522:0:2" - }, - "scope": 2435, - "src": "6454:69:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "50005b83", - "id": 2279, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getReporterLastTimestamp", - "nameLocation": "6537:24:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2275, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2274, - "mutability": "mutable", - "name": "_reporter", - "nameLocation": "6570:9:2", - "nodeType": "VariableDeclaration", - "scope": 2279, - "src": "6562:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2273, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6562:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "6561:19:2" - }, - "returnParameters": { - "id": 2278, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2277, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2279, - "src": "6603:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2276, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6603:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6602:9:2" - }, - "scope": 2435, - "src": "6528:84:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ef4c262d", - "id": 2286, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTipsById", - "nameLocation": "6626:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2282, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2281, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6646:8:2", - "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "6638:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2280, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6638:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "6637:18:2" - }, - "returnParameters": { - "id": 2285, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2284, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "6678:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2283, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6678:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6677:9:2" - }, - "scope": 2435, - "src": "6617:70:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "14d66b9a", - "id": 2291, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTimeBasedReward", - "nameLocation": "6701:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2287, - "nodeType": "ParameterList", - "parameters": [], - "src": "6719:2:2" - }, - "returnParameters": { - "id": 2290, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2289, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2291, - "src": "6744:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2288, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6744:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6743:9:2" - }, - "scope": 2435, - "src": "6692:61:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "35e72432", - "id": 2298, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTimestampCountById", - "nameLocation": "6767:21:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2294, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2293, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6797:8:2", - "nodeType": "VariableDeclaration", - "scope": 2298, - "src": "6789:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2292, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6789:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "6788:18:2" - }, - "returnParameters": { - "id": 2297, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2296, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2298, - "src": "6829:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2295, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6829:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6828:9:2" - }, - "scope": 2435, - "src": "6758:80:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "9d9b16ed", - "id": 2307, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTimestampIndexByTimestamp", - "nameLocation": "6852:28:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2303, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2300, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6889:8:2", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "6881:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2299, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6881:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2302, - "mutability": "mutable", - "name": "_timestamp", - "nameLocation": "6907:10:2", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "6899:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2301, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6899:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6880:38:2" - }, - "returnParameters": { - "id": 2306, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2305, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "6941:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2304, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6941:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6940:9:2" - }, - "scope": 2435, - "src": "6843:107:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a1e588a5", - "id": 2316, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getCurrentReward", - "nameLocation": "6964:16:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2310, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2309, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "6989:8:2", - "nodeType": "VariableDeclaration", - "scope": 2316, - "src": "6981:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2308, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6981:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "6980:18:2" - }, - "returnParameters": { - "id": 2315, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2312, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2316, - "src": "7021:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2311, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7021:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2314, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2316, - "src": "7030:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2313, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7030:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7020:18:2" - }, - "scope": 2435, - "src": "6955:84:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "adf1639d", - "id": 2323, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getCurrentValue", - "nameLocation": "7053:15:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2319, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2318, - "mutability": "mutable", - "name": "_queryId", - "nameLocation": "7077:8:2", - "nodeType": "VariableDeclaration", - "scope": 2323, - "src": "7069:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2317, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7069:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "7068:18:2" - }, - "returnParameters": { - "id": 2322, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2321, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2323, - "src": "7109:12:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2320, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7109:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7108:14:2" - }, - "scope": 2435, - "src": "7044:79:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "c0f95d52", - "id": 2328, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTimeOfLastNewValue", - "nameLocation": "7137:21:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2324, - "nodeType": "ParameterList", - "parameters": [], - "src": "7158:2:2" - }, - "returnParameters": { - "id": 2327, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2326, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2328, - "src": "7183:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2325, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7183:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7182:9:2" - }, - "scope": 2435, - "src": "7128:64:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6274885f", - "id": 2337, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "issueTreasury", - "nameLocation": "7221:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2335, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2330, - "mutability": "mutable", - "name": "_maxAmount", - "nameLocation": "7243:10:2", - "nodeType": "VariableDeclaration", - "scope": 2337, - "src": "7235:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2329, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7235:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2332, - "mutability": "mutable", - "name": "_rate", - "nameLocation": "7263:5:2", - "nodeType": "VariableDeclaration", - "scope": 2337, - "src": "7255:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2331, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7255:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2334, - "mutability": "mutable", - "name": "_duration", - "nameLocation": "7278:9:2", - "nodeType": "VariableDeclaration", - "scope": 2337, - "src": "7270:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2333, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7270:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7234:54:2" - }, - "returnParameters": { - "id": 2336, - "nodeType": "ParameterList", - "parameters": [], - "src": "7297:0:2" - }, - "scope": 2435, - "src": "7212:86:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ef362980", - "id": 2344, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payTreasury", - "nameLocation": "7312:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2342, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2339, - "mutability": "mutable", - "name": "_investor", - "nameLocation": "7332:9:2", - "nodeType": "VariableDeclaration", - "scope": 2344, - "src": "7324:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2338, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7324:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2341, - "mutability": "mutable", - "name": "_id", - "nameLocation": "7350:3:2", - "nodeType": "VariableDeclaration", - "scope": 2344, - "src": "7342:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2340, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7342:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7323:31:2" - }, - "returnParameters": { - "id": 2343, - "nodeType": "ParameterList", - "parameters": [], - "src": "7363:0:2" - }, - "scope": 2435, - "src": "7303:61:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6a64b815", - "id": 2351, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "buyTreasury", - "nameLocation": "7378:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2349, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2346, - "mutability": "mutable", - "name": "_id", - "nameLocation": "7398:3:2", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "7390:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2345, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7390:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2348, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "7410:7:2", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "7402:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2347, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7402:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7389:29:2" - }, - "returnParameters": { - "id": 2350, - "nodeType": "ParameterList", - "parameters": [], - "src": "7427:0:2" - }, - "scope": 2435, - "src": "7369:59:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "73342a47", - "id": 2364, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTreasuryDetails", - "nameLocation": "7442:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2354, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2353, - "mutability": "mutable", - "name": "_id", - "nameLocation": "7469:3:2", - "nodeType": "VariableDeclaration", - "scope": 2364, - "src": "7461:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2352, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7461:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7460:13:2" - }, - "returnParameters": { - "id": 2363, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2356, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2364, - "src": "7496:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2355, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7496:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2358, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2364, - "src": "7504:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2357, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7504:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2360, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2364, - "src": "7512:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2359, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7512:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2362, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2364, - "src": "7520:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2361, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7520:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7495:33:2" - }, - "scope": 2435, - "src": "7433:96:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "770d458f", - "id": 2371, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTreasuryFundsByUser", - "nameLocation": "7543:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2367, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2366, - "mutability": "mutable", - "name": "_user", - "nameLocation": "7574:5:2", - "nodeType": "VariableDeclaration", - "scope": 2371, - "src": "7566:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2365, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7566:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7565:15:2" - }, - "returnParameters": { - "id": 2370, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2369, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2371, - "src": "7603:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2368, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7603:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7602:9:2" - }, - "scope": 2435, - "src": "7534:78:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ae23fae1", - "id": 2384, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTreasuryAccount", - "nameLocation": "7626:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2376, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2373, - "mutability": "mutable", - "name": "_id", - "nameLocation": "7653:3:2", - "nodeType": "VariableDeclaration", - "scope": 2384, - "src": "7645:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2372, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7645:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2375, - "mutability": "mutable", - "name": "_investor", - "nameLocation": "7666:9:2", - "nodeType": "VariableDeclaration", - "scope": 2384, - "src": "7658:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2374, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7658:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7644:32:2" - }, - "returnParameters": { - "id": 2383, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2378, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2384, - "src": "7699:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2377, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7699:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2380, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2384, - "src": "7707:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2379, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7707:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2382, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2384, - "src": "7715:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2381, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7715:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7698:22:2" - }, - "scope": 2435, - "src": "7617:104:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "8e0918b5", - "id": 2389, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTreasuryCount", - "nameLocation": "7735:16:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2385, - "nodeType": "ParameterList", - "parameters": [], - "src": "7751:2:2" - }, - "returnParameters": { - "id": 2388, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2387, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2389, - "src": "7776:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2386, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7776:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7775:9:2" - }, - "scope": 2435, - "src": "7726:59:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1683ca53", - "id": 2397, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getTreasuryOwners", - "nameLocation": "7799:17:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2392, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2391, - "mutability": "mutable", - "name": "_id", - "nameLocation": "7825:3:2", - "nodeType": "VariableDeclaration", - "scope": 2397, - "src": "7817:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2390, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7817:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7816:13:2" - }, - "returnParameters": { - "id": 2396, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2395, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2397, - "src": "7852:16:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 2393, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7852:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2394, - "nodeType": "ArrayTypeName", - "src": "7852:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - } - ], - "src": "7851:18:2" - }, - "scope": 2435, - "src": "7790:80:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4d90d705", - "id": 2406, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "wasPaid", - "nameLocation": "7884:7:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2402, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2399, - "mutability": "mutable", - "name": "_id", - "nameLocation": "7900:3:2", - "nodeType": "VariableDeclaration", - "scope": 2406, - "src": "7892:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2398, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7892:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2401, - "mutability": "mutable", - "name": "_investor", - "nameLocation": "7913:9:2", - "nodeType": "VariableDeclaration", - "scope": 2406, - "src": "7905:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2400, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7905:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7891:32:2" - }, - "returnParameters": { - "id": 2405, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2404, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2406, - "src": "7946:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2403, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7946:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7945:6:2" - }, - "scope": 2435, - "src": "7875:77:2", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "515ec907", - "id": 2413, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeAddressVar", - "nameLocation": "7987:16:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2411, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2408, - "mutability": "mutable", - "name": "_id", - "nameLocation": "8012:3:2", - "nodeType": "VariableDeclaration", - "scope": 2413, - "src": "8004:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2407, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8004:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2410, - "mutability": "mutable", - "name": "_addy", - "nameLocation": "8025:5:2", - "nodeType": "VariableDeclaration", - "scope": 2413, - "src": "8017:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2409, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8017:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "8003:28:2" - }, - "returnParameters": { - "id": 2412, - "nodeType": "ParameterList", - "parameters": [], - "src": "8040:0:2" - }, - "scope": 2435, - "src": "7978:63:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1c02708d", - "id": 2416, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "killContract", - "nameLocation": "8082:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2414, - "nodeType": "ParameterList", - "parameters": [], - "src": "8094:2:2" - }, - "returnParameters": { - "id": 2415, - "nodeType": "ParameterList", - "parameters": [], - "src": "8105:0:2" - }, - "scope": 2435, - "src": "8073:33:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0b477573", - "id": 2423, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "migrateFor", - "nameLocation": "8120:10:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2421, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2418, - "mutability": "mutable", - "name": "_destination", - "nameLocation": "8139:12:2", - "nodeType": "VariableDeclaration", - "scope": 2423, - "src": "8131:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2417, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8131:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2420, - "mutability": "mutable", - "name": "_amount", - "nameLocation": "8160:7:2", - "nodeType": "VariableDeclaration", - "scope": 2423, - "src": "8152:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2419, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8152:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8130:38:2" - }, - "returnParameters": { - "id": 2422, - "nodeType": "ParameterList", - "parameters": [], - "src": "8177:0:2" - }, - "scope": 2435, - "src": "8111:67:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "335f8dd4", - "id": 2428, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "rescue51PercentAttack", - "nameLocation": "8192:21:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2426, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2425, - "mutability": "mutable", - "name": "_tokenHolder", - "nameLocation": "8222:12:2", - "nodeType": "VariableDeclaration", - "scope": 2428, - "src": "8214:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2424, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8214:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "8213:22:2" - }, - "returnParameters": { - "id": 2427, - "nodeType": "ParameterList", - "parameters": [], - "src": "8244:0:2" - }, - "scope": 2435, - "src": "8183:62:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "7c564a6a", - "id": 2431, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "rescueBrokenDataReporting", - "nameLocation": "8259:25:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2429, - "nodeType": "ParameterList", - "parameters": [], - "src": "8284:2:2" - }, - "returnParameters": { - "id": 2430, - "nodeType": "ParameterList", - "parameters": [], - "src": "8295:0:2" - }, - "scope": 2435, - "src": "8250:46:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "32701403", - "id": 2434, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "rescueFailedUpdate", - "nameLocation": "8310:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2432, - "nodeType": "ParameterList", - "parameters": [], - "src": "8328:2:2" - }, - "returnParameters": { - "id": 2433, - "nodeType": "ParameterList", - "parameters": [], - "src": "8339:0:2" - }, - "scope": 2435, - "src": "8301:39:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 2436, - "src": "58:8284:2" - } - ], - "src": "32:8311:2" - }, - "id": 2 - }, - "contracts/mocks/BenchUsingTellor.sol": { - "ast": { - "absolutePath": "contracts/mocks/BenchUsingTellor.sol", - "exportedSymbols": { - "BenchUsingTellor": [ - 2451 - ], - "ITellor": [ - 2435 - ], - "UsingTellor": [ - 1658 - ] - }, - "id": 2452, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2437, - "literals": [ - "solidity", - ">=", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:24:3" - }, - { - "absolutePath": "contracts/UsingTellor.sol", - "file": "../UsingTellor.sol", - "id": 2438, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 2452, - "sourceUnit": 1659, - "src": "58:28:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2440, - "name": "UsingTellor", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1658, - "src": "215:11:3" - }, - "id": 2441, - "nodeType": "InheritanceSpecifier", - "src": "215:11:3" - } - ], - "contractDependencies": [ - 1658 - ], - "contractKind": "contract", - "documentation": { - "id": 2439, - "nodeType": "StructuredDocumentation", - "src": "88:97:3", - "text": " @title UserContract\n This contract inherits UsingTellor for simulating user interaction" - }, - "fullyImplemented": true, - "id": 2451, - "linearizedBaseContracts": [ - 2451, - 1658 - ], - "name": "BenchUsingTellor", - "nameLocation": "195:16:3", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 2449, - "nodeType": "Block", - "src": "291:2:3", - "statements": [] - }, - "id": 2450, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 2446, - "name": "_tellor", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "282:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "id": 2447, - "modifierName": { - "id": 2445, - "name": "UsingTellor", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1658, - "src": "270:11:3" - }, - "nodeType": "ModifierInvocation", - "src": "270:20:3" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2444, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2443, - "mutability": "mutable", - "name": "_tellor", - "nameLocation": "261:7:3", - "nodeType": "VariableDeclaration", - "scope": 2450, - "src": "245:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 2442, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "245:15:3", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - } - ], - "src": "244:25:3" - }, - "returnParameters": { - "id": 2448, - "nodeType": "ParameterList", - "parameters": [], - "src": "291:0:3" - }, - "scope": 2451, - "src": "233:60:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "scope": 2452, - "src": "186:109:3" - } - ], - "src": "32:264:3" - }, - "id": 3 - } - } - } -} diff --git a/artifacts/build-info/d8bc9c4dcbff4f4633ec10b95ecc3bd9.json b/artifacts/build-info/969f1b7b30f0a731a9f9b0dc921a9161.json similarity index 73% rename from artifacts/build-info/d8bc9c4dcbff4f4633ec10b95ecc3bd9.json rename to artifacts/build-info/969f1b7b30f0a731a9f9b0dc921a9161.json index 13f06e3..1c0dd03 100644 --- a/artifacts/build-info/d8bc9c4dcbff4f4633ec10b95ecc3bd9.json +++ b/artifacts/build-info/969f1b7b30f0a731a9f9b0dc921a9161.json @@ -1,5 +1,5 @@ { - "id": "d8bc9c4dcbff4f4633ec10b95ecc3bd9", + "id": "969f1b7b30f0a731a9f9b0dc921a9161", "_format": "hh-sol-build-info-1", "solcVersion": "0.8.3", "solcLongVersion": "0.8.3+commit.8d00100c", @@ -7,7 +7,7 @@ "language": "Solidity", "sources": { "contracts/TellorPlayground.sol": { - "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ncontract TellorPlayground {\n // Events\n event Approval(\n address indexed owner,\n address indexed spender,\n uint256 value\n );\n event NewReport(\n bytes32 _queryId,\n uint256 _time,\n bytes _value,\n uint256 _reward,\n uint256 _nonce,\n bytes _queryData,\n address _reporter\n );\n event NewStaker(address _staker, uint256 _amount);\n event TipAdded(\n address indexed _user,\n bytes32 indexed _queryId,\n uint256 _tip,\n uint256 _totalTip,\n bytes _queryData\n );\n event StakeWithdrawRequested(address _staker, uint256 _amount);\n event StakeWithdrawn(address _staker);\n event Transfer(address indexed from, address indexed to, uint256 value);\n\n // Storage\n mapping(bytes32 => address) public addresses;\n mapping(bytes32 => mapping(uint256 => bool)) public isDisputed; //queryId -> timestamp -> value\n mapping(bytes32 => mapping(uint256 => address)) public reporterByTimestamp;\n mapping(address => StakeInfo) stakerDetails; //mapping from a persons address to their staking info\n mapping(bytes32 => uint256[]) public timestamps;\n mapping(bytes32 => uint256) public tips; // mapping of data IDs to the amount of TRB they are tipped\n mapping(bytes32 => mapping(uint256 => bytes)) public values; //queryId -> timestamp -> value\n mapping(bytes32 => uint256[]) public voteRounds; // mapping of vote identifier hashes to an array of dispute IDs\n mapping(address => mapping(address => uint256)) private _allowances;\n mapping(address => uint256) private _balances;\n\n uint256 public constant timeBasedReward = 5e17; // time based reward for a reporter for successfully submitting a value\n uint256 public timeOfLastNewValue = block.timestamp; // time of the last new value, originally set to the block timestamp\n uint256 public tipsInContract; // number of tips within the contract\n uint256 public voteCount;\n uint256 private _totalSupply;\n string private _name;\n string private _symbol;\n uint8 private _decimals;\n\n // Structs\n struct StakeInfo {\n uint256 startDate; //stake start date\n uint256 stakedBalance; // staked balance\n uint256 lockedBalance; // amount locked for withdrawal\n uint256 reporterLastTimestamp; // timestamp of reporter's last reported value\n uint256 reportsSubmitted; // total number of reports submitted by reporter\n }\n\n // Functions\n /**\n * @dev Initializes playground parameters\n */\n constructor() {\n _name = \"TellorPlayground\";\n _symbol = \"TRBP\";\n _decimals = 18;\n addresses[\n keccak256(abi.encodePacked(\"_GOVERNANCE_CONTRACT\"))\n ] = address(this);\n }\n\n /**\n * @dev Approves amount that an address is alowed to spend of behalf of another\n * @param _spender The address which is allowed to spend the tokens\n * @param _amount The amount that msg.sender is allowing spender to use\n * @return bool Whether the transaction succeeded\n *\n */\n function approve(address _spender, uint256 _amount)\n public\n virtual\n returns (bool)\n {\n _approve(msg.sender, _spender, _amount);\n return true;\n }\n\n /**\n * @dev A mock function to create a dispute\n * @param _queryId The tellorId to be disputed\n * @param _timestamp the timestamp of the value to be disputed\n */\n function beginDispute(bytes32 _queryId, uint256 _timestamp) external {\n values[_queryId][_timestamp] = bytes(\"\");\n isDisputed[_queryId][_timestamp] = true;\n voteCount++;\n voteRounds[keccak256(abi.encodePacked(_queryId, _timestamp))].push(\n voteCount\n );\n }\n\n /**\n * @dev Public function to mint tokens to the given address\n * @param _user The address which will receive the tokens\n */\n function faucet(address _user) external {\n _mint(_user, 1000 ether);\n }\n\n /**\n * @dev A mock function to submit a value to be read without reporter staking needed\n * @param _queryId the ID to associate the value to\n * @param _value the value for the queryId\n * @param _nonce the current value count for the query id\n * @param _queryData the data used by reporters to fulfill the data query\n */\n // slither-disable-next-line timestamp\n function submitValue(\n bytes32 _queryId,\n bytes calldata _value,\n uint256 _nonce,\n bytes memory _queryData\n ) external {\n require(\n _nonce == timestamps[_queryId].length,\n \"nonce should be correct\"\n );\n require(\n _queryId == keccak256(_queryData) || uint256(_queryId) <= 100,\n \"id must be hash of bytes data\"\n );\n values[_queryId][block.timestamp] = _value;\n timestamps[_queryId].push(block.timestamp);\n // Send tips + timeBasedReward to reporter and reset tips for ID\n (uint256 _tip, uint256 _reward) = getCurrentReward(_queryId);\n if (_reward + _tip > 0) {\n transfer(msg.sender, _reward + _tip);\n }\n timeOfLastNewValue = block.timestamp;\n tipsInContract -= _tip;\n tips[_queryId] = 0;\n reporterByTimestamp[_queryId][block.timestamp] = msg.sender;\n stakerDetails[msg.sender].reporterLastTimestamp = block.timestamp;\n stakerDetails[msg.sender].reportsSubmitted++;\n emit NewReport(\n _queryId,\n block.timestamp,\n _value,\n _tip + _reward,\n _nonce,\n _queryData,\n msg.sender\n );\n }\n\n /**\n * @dev Adds a tip to a given query ID.\n * @param _queryId is the queryId to look up\n * @param _amount is the amount of tips\n * @param _queryData is the extra bytes data needed to fulfill the request\n */\n function tipQuery(\n bytes32 _queryId,\n uint256 _amount,\n bytes memory _queryData\n ) external {\n require(\n _queryId == keccak256(_queryData) || uint256(_queryId) <= 100,\n \"id must be hash of bytes data\"\n );\n _transfer(msg.sender, address(this), _amount);\n _amount = _amount / 2;\n _burn(address(this), _amount);\n tipsInContract += _amount;\n tips[_queryId] += _amount;\n emit TipAdded(\n msg.sender,\n _queryId,\n _amount,\n tips[_queryId],\n _queryData\n );\n }\n\n /**\n * @dev Transfer tokens from one user to another\n * @param _recipient The destination address\n * @param _amount The amount of tokens, including decimals, to transfer\n * @return bool If the transfer succeeded\n */\n function transfer(address _recipient, uint256 _amount)\n public\n virtual\n returns (bool)\n {\n _transfer(msg.sender, _recipient, _amount);\n return true;\n }\n\n /**\n * @dev Transfer tokens from user to another\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n * @return bool Whether the transfer succeeded\n */\n function transferFrom(\n address _sender,\n address _recipient,\n uint256 _amount\n ) public virtual returns (bool) {\n _transfer(_sender, _recipient, _amount);\n _approve(\n _sender,\n msg.sender,\n _allowances[_sender][msg.sender] - _amount\n );\n return true;\n }\n\n // Tellor Flex\n /**\n * @dev Allows a reporter to submit stake\n * @param _amount amount of tokens to stake\n */\n function depositStake(uint256 _amount) external {\n StakeInfo storage _staker = stakerDetails[msg.sender];\n if (_staker.lockedBalance > 0) {\n if (_staker.lockedBalance >= _amount) {\n _staker.lockedBalance -= _amount;\n } else {\n require(\n _transferFrom(\n msg.sender,\n address(this),\n _amount - _staker.lockedBalance\n )\n );\n _staker.lockedBalance = 0;\n }\n } else {\n require(_transferFrom(msg.sender, address(this), _amount));\n }\n _staker.startDate = block.timestamp; // This resets their stake start date to now\n _staker.stakedBalance += _amount;\n emit NewStaker(msg.sender, _amount);\n }\n\n /**\n * @dev Allows a reporter to request to withdraw their stake\n * @param _amount amount of staked tokens requesting to withdraw\n */\n function requestStakingWithdraw(uint256 _amount) external {\n StakeInfo storage _staker = stakerDetails[msg.sender];\n require(\n _staker.stakedBalance >= _amount,\n \"insufficient staked balance\"\n );\n _staker.startDate = block.timestamp;\n _staker.lockedBalance += _amount;\n _staker.stakedBalance -= _amount;\n emit StakeWithdrawRequested(msg.sender, _amount);\n }\n\n /**\n * @dev Withdraws a reporter's stake\n */\n function withdrawStake() external {\n StakeInfo storage _s = stakerDetails[msg.sender];\n // Ensure reporter is locked and that enough time has passed\n require(block.timestamp - _s.startDate >= 7 days, \"7 days didn't pass\");\n require(_s.lockedBalance > 0, \"reporter not locked for withdrawal\");\n _transfer(address(this), msg.sender, _s.lockedBalance);\n _s.lockedBalance = 0;\n emit StakeWithdrawn(msg.sender);\n }\n\n /**\n * @dev Returns the reporter for a given timestamp and queryId\n * @param _queryId bytes32 version of the queryId\n * @param _timestamp uint256 timestamp of report\n * @return address of data reporter\n */\n function getReporterByTimestamp(bytes32 _queryId, uint256 _timestamp)\n external\n view\n returns (address)\n {\n return reporterByTimestamp[_queryId][_timestamp];\n }\n\n /**\n * @dev Allows users to retrieve all information about a staker\n * @param _staker address of staker inquiring about\n * @return uint startDate of staking\n * @return uint current amount staked\n * @return uint current amount locked for withdrawal\n * @return uint reporter's last reported timestamp\n * @return uint total number of reports submitted by reporter\n */\n function getStakerInfo(address _staker)\n external\n view\n returns (\n uint256,\n uint256,\n uint256,\n uint256,\n uint256\n )\n {\n return (\n stakerDetails[_staker].startDate,\n stakerDetails[_staker].stakedBalance,\n stakerDetails[_staker].lockedBalance,\n stakerDetails[_staker].reporterLastTimestamp,\n stakerDetails[_staker].reportsSubmitted\n );\n }\n\n // Getters\n /**\n * @dev Returns the amount that an address is alowed to spend of behalf of another\n * @param _owner The address which owns the tokens\n * @param _spender The address that will use the tokens\n * @return uint256 The amount of allowed tokens\n */\n function allowance(address _owner, address _spender)\n public\n view\n virtual\n returns (uint256)\n {\n return _allowances[_owner][_spender];\n }\n\n /**\n * @dev Returns the balance of a given user.\n * @param _account user address\n * @return uint256 user's token balance\n */\n function balanceOf(address _account) public view returns (uint256) {\n return _balances[_account];\n }\n\n /**\n * @dev Returns the number of decimals used to get its user representation.\n * @return uint8 the number of decimals; used only for display purposes\n */\n function decimals() public view returns (uint8) {\n return _decimals;\n }\n\n /**\n * @dev Calculates the current reward for a reporter given tips and time based reward\n * @param _queryId is ID of the specific data feed\n * @return uint256 tip amount for given query ID\n * @return uint256 time based reward\n */\n // slither-disable-next-line timestamp\n function getCurrentReward(bytes32 _queryId)\n public\n view\n returns (uint256, uint256)\n {\n uint256 _timeDiff = block.timestamp - timeOfLastNewValue;\n uint256 _reward = (_timeDiff * timeBasedReward) / 300; //.5 TRB per 5 minutes (should we make this upgradeable)\n if (balanceOf(address(this)) < _reward + tipsInContract) {\n _reward = balanceOf(address(this)) - tipsInContract;\n }\n return (tips[_queryId], _reward);\n }\n\n /**\n * @dev Counts the number of values that have been submitted for a given ID\n * @param _queryId the ID to look up\n * @return uint256 count of the number of values received for the queryId\n */\n function getNewValueCountbyQueryId(bytes32 _queryId)\n public\n view\n returns (uint256)\n {\n return timestamps[_queryId].length;\n }\n\n /**\n * @dev Gets the timestamp for the value based on their index\n * @param _queryId is the queryId to look up\n * @param _index is the value index to look up\n * @return uint256 timestamp\n */\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index)\n public\n view\n returns (uint256)\n {\n uint256 len = timestamps[_queryId].length;\n if (len == 0 || len <= _index) return 0;\n return timestamps[_queryId][_index];\n }\n\n /**\n * @dev Returns an array of voting rounds for a given vote\n * @param _hash is the identifier hash for a vote\n * @return uint256[] memory dispute IDs of the vote rounds\n */\n function getVoteRounds(bytes32 _hash)\n public\n view\n returns (uint256[] memory)\n {\n return voteRounds[_hash];\n }\n\n /**\n * @dev Returns the governance address of the contract\n * @return address (this address)\n */\n function governance() external view returns(address){\n return address(this);\n }\n \n /**\n * @dev Returns the name of the token.\n * @return string name of the token\n */\n function name() public view returns (string memory) {\n return _name;\n }\n\n /**\n * @dev Retrieves value from oracle based on queryId/timestamp\n * @param _queryId being requested\n * @param _timestamp to retrieve data/value from\n * @return bytes value for queryId/timestamp submitted\n */\n function retrieveData(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bytes memory)\n {\n return values[_queryId][_timestamp];\n }\n\n /**\n * @dev Returns the symbol of the token.\n * @return string symbol of the token\n */\n function symbol() public view returns (string memory) {\n return _symbol;\n }\n\n /**\n * @dev Returns the total supply of the token.\n * @return uint256 total supply of token\n */\n function totalSupply() public view returns (uint256) {\n return _totalSupply;\n }\n\n // Internal functions\n /**\n * @dev Internal function to approve tokens for the user\n * @param _owner The owner of the tokens\n * @param _spender The address which is allowed to spend the tokens\n * @param _amount The amount that msg.sender is allowing spender to use\n */\n function _approve(\n address _owner,\n address _spender,\n uint256 _amount\n ) internal virtual {\n require(_owner != address(0), \"ERC20: approve from the zero address\");\n require(_spender != address(0), \"ERC20: approve to the zero address\");\n _allowances[_owner][_spender] = _amount;\n emit Approval(_owner, _spender, _amount);\n }\n\n /**\n * @dev Internal function to burn tokens for the user\n * @param _account The address whose tokens to burn\n * @param _amount The quantity of tokens to burn\n */\n function _burn(address _account, uint256 _amount) internal virtual {\n require(_account != address(0), \"ERC20: burn from the zero address\");\n _balances[_account] -= _amount;\n _totalSupply -= _amount;\n emit Transfer(_account, address(0), _amount);\n }\n\n /**\n * @dev Internal function to create new tokens for the user\n * @param _account The address which receives minted tokens\n * @param _amount The quantity of tokens to min\n */\n function _mint(address _account, uint256 _amount) internal virtual {\n require(_account != address(0), \"ERC20: mint to the zero address\");\n _totalSupply += _amount;\n _balances[_account] += _amount;\n emit Transfer(address(0), _account, _amount);\n }\n\n /**\n * @dev Internal function to perform token transfer\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n */\n function _transfer(\n address _sender,\n address _recipient,\n uint256 _amount\n ) internal virtual {\n require(_sender != address(0), \"ERC20: transfer from the zero address\");\n require(\n _recipient != address(0),\n \"ERC20: transfer to the zero address\"\n );\n _balances[_sender] -= _amount;\n _balances[_recipient] += _amount;\n emit Transfer(_sender, _recipient, _amount);\n }\n\n /**\n * @dev Allows this contract to transfer tokens from one user to another\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n * @return bool Whether the transfer succeeded\n */\n function _transferFrom(\n address _sender,\n address _recipient,\n uint256 _amount\n ) internal virtual returns (bool) {\n _transfer(_sender, _recipient, _amount);\n _approve(\n _sender,\n msg.sender,\n _allowances[_sender][address(this)] - _amount\n );\n return true;\n }\n}\n" + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ncontract TellorPlayground {\n // Events\n event Approval(\n address indexed owner,\n address indexed spender,\n uint256 value\n );\n event NewReport(\n bytes32 _queryId,\n uint256 _time,\n bytes _value,\n uint256 _nonce,\n bytes _queryData,\n address _reporter\n );\n event NewStaker(address _staker, uint256 _amount);\n event TipAdded(\n address indexed _user,\n bytes32 indexed _queryId,\n uint256 _tip,\n uint256 _totalTip,\n bytes _queryData\n );\n event StakeWithdrawRequested(address _staker, uint256 _amount);\n event StakeWithdrawn(address _staker);\n event Transfer(address indexed from, address indexed to, uint256 value);\n\n // Storage\n mapping(bytes32 => address) public addresses;\n mapping(bytes32 => mapping(uint256 => bool)) public isDisputed; //queryId -> timestamp -> value\n mapping(bytes32 => mapping(uint256 => address)) public reporterByTimestamp;\n mapping(address => StakeInfo) stakerDetails; //mapping from a persons address to their staking info\n mapping(bytes32 => uint256[]) public timestamps;\n mapping(bytes32 => uint256) public tips; // mapping of data IDs to the amount of TRB they are tipped\n mapping(bytes32 => mapping(uint256 => bytes)) public values; //queryId -> timestamp -> value\n mapping(bytes32 => uint256[]) public voteRounds; // mapping of vote identifier hashes to an array of dispute IDs\n mapping(address => mapping(address => uint256)) private _allowances;\n mapping(address => uint256) private _balances;\n\n uint256 public constant timeBasedReward = 5e17; // time based reward for a reporter for successfully submitting a value\n uint256 public tipsInContract; // number of tips within the contract\n uint256 public voteCount;\n uint256 private _totalSupply;\n string private _name;\n string private _symbol;\n uint8 private _decimals;\n\n // Structs\n struct StakeInfo {\n uint256 startDate; //stake start date\n uint256 stakedBalance; // staked balance\n uint256 lockedBalance; // amount locked for withdrawal\n uint256 reporterLastTimestamp; // timestamp of reporter's last reported value\n uint256 reportsSubmitted; // total number of reports submitted by reporter\n }\n\n // Functions\n /**\n * @dev Initializes playground parameters\n */\n constructor() {\n _name = \"TellorPlayground\";\n _symbol = \"TRBP\";\n _decimals = 18;\n addresses[\n keccak256(abi.encodePacked(\"_GOVERNANCE_CONTRACT\"))\n ] = address(this);\n }\n\n /**\n * @dev Mock function for adding staking rewards\n * @param _amount quantity of tokens to transfer to this contract\n */\n function addStakingRewards(uint256 _amount) external {\n require(_transferFrom(msg.sender, address(this), _amount));\n }\n\n /**\n * @dev Approves amount that an address is alowed to spend of behalf of another\n * @param _spender The address which is allowed to spend the tokens\n * @param _amount The amount that msg.sender is allowing spender to use\n * @return bool Whether the transaction succeeded\n *\n */\n function approve(address _spender, uint256 _amount)\n public\n virtual\n returns (bool)\n {\n _approve(msg.sender, _spender, _amount);\n return true;\n }\n\n /**\n * @dev A mock function to create a dispute\n * @param _queryId The tellorId to be disputed\n * @param _timestamp the timestamp of the value to be disputed\n */\n function beginDispute(bytes32 _queryId, uint256 _timestamp) external {\n values[_queryId][_timestamp] = bytes(\"\");\n isDisputed[_queryId][_timestamp] = true;\n voteCount++;\n voteRounds[keccak256(abi.encodePacked(_queryId, _timestamp))].push(\n voteCount\n );\n }\n\n /**\n * @dev Public function to mint tokens to the given address\n * @param _user The address which will receive the tokens\n */\n function faucet(address _user) external {\n _mint(_user, 1000 ether);\n }\n\n /**\n * @dev A mock function to submit a value to be read without reporter staking needed\n * @param _queryId the ID to associate the value to\n * @param _value the value for the queryId\n * @param _nonce the current value count for the query id\n * @param _queryData the data used by reporters to fulfill the data query\n */\n // slither-disable-next-line timestamp\n function submitValue(\n bytes32 _queryId,\n bytes calldata _value,\n uint256 _nonce,\n bytes memory _queryData\n ) external {\n require(\n _nonce == timestamps[_queryId].length || _nonce == 0,\n \"nonce must match timestamp index\"\n );\n require(\n _queryId == keccak256(_queryData) || uint256(_queryId) <= 100,\n \"id must be hash of bytes data\"\n );\n values[_queryId][block.timestamp] = _value;\n timestamps[_queryId].push(block.timestamp);\n reporterByTimestamp[_queryId][block.timestamp] = msg.sender;\n stakerDetails[msg.sender].reporterLastTimestamp = block.timestamp;\n stakerDetails[msg.sender].reportsSubmitted++;\n emit NewReport(\n _queryId,\n block.timestamp,\n _value,\n _nonce,\n _queryData,\n msg.sender\n );\n }\n\n /**\n * @dev Adds a tip to a given query ID.\n * @param _queryId is the queryId to look up\n * @param _amount is the amount of tips\n * @param _queryData is the extra bytes data needed to fulfill the request\n */\n function tipQuery(\n bytes32 _queryId,\n uint256 _amount,\n bytes memory _queryData\n ) external {\n require(\n _queryId == keccak256(_queryData) || uint256(_queryId) <= 100,\n \"id must be hash of bytes data\"\n );\n _transfer(msg.sender, address(this), _amount);\n _amount = _amount / 2;\n _burn(address(this), _amount);\n tipsInContract += _amount;\n tips[_queryId] += _amount;\n emit TipAdded(\n msg.sender,\n _queryId,\n _amount,\n tips[_queryId],\n _queryData\n );\n }\n\n /**\n * @dev Transfer tokens from one user to another\n * @param _recipient The destination address\n * @param _amount The amount of tokens, including decimals, to transfer\n * @return bool If the transfer succeeded\n */\n function transfer(address _recipient, uint256 _amount)\n public\n virtual\n returns (bool)\n {\n _transfer(msg.sender, _recipient, _amount);\n return true;\n }\n\n /**\n * @dev Transfer tokens from user to another\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n * @return bool Whether the transfer succeeded\n */\n function transferFrom(\n address _sender,\n address _recipient,\n uint256 _amount\n ) public virtual returns (bool) {\n _transfer(_sender, _recipient, _amount);\n _approve(\n _sender,\n msg.sender,\n _allowances[_sender][msg.sender] - _amount\n );\n return true;\n }\n\n // Tellor Flex\n /**\n * @dev Allows a reporter to submit stake\n * @param _amount amount of tokens to stake\n */\n function depositStake(uint256 _amount) external {\n StakeInfo storage _staker = stakerDetails[msg.sender];\n if (_staker.lockedBalance > 0) {\n if (_staker.lockedBalance >= _amount) {\n _staker.lockedBalance -= _amount;\n } else {\n require(\n _transferFrom(\n msg.sender,\n address(this),\n _amount - _staker.lockedBalance\n )\n );\n _staker.lockedBalance = 0;\n }\n } else {\n require(_transferFrom(msg.sender, address(this), _amount));\n }\n _staker.startDate = block.timestamp; // This resets their stake start date to now\n _staker.stakedBalance += _amount;\n emit NewStaker(msg.sender, _amount);\n }\n\n /**\n * @dev Allows a reporter to request to withdraw their stake\n * @param _amount amount of staked tokens requesting to withdraw\n */\n function requestStakingWithdraw(uint256 _amount) external {\n StakeInfo storage _staker = stakerDetails[msg.sender];\n require(\n _staker.stakedBalance >= _amount,\n \"insufficient staked balance\"\n );\n _staker.startDate = block.timestamp;\n _staker.lockedBalance += _amount;\n _staker.stakedBalance -= _amount;\n emit StakeWithdrawRequested(msg.sender, _amount);\n }\n\n /**\n * @dev Withdraws a reporter's stake\n */\n function withdrawStake() external {\n StakeInfo storage _s = stakerDetails[msg.sender];\n // Ensure reporter is locked and that enough time has passed\n require(block.timestamp - _s.startDate >= 7 days, \"7 days didn't pass\");\n require(_s.lockedBalance > 0, \"reporter not locked for withdrawal\");\n _transfer(address(this), msg.sender, _s.lockedBalance);\n _s.lockedBalance = 0;\n emit StakeWithdrawn(msg.sender);\n }\n\n /**\n * @dev Returns the reporter for a given timestamp and queryId\n * @param _queryId bytes32 version of the queryId\n * @param _timestamp uint256 timestamp of report\n * @return address of data reporter\n */\n function getReporterByTimestamp(bytes32 _queryId, uint256 _timestamp)\n external\n view\n returns (address)\n {\n return reporterByTimestamp[_queryId][_timestamp];\n }\n\n /**\n * @dev Allows users to retrieve all information about a staker\n * @param _staker address of staker inquiring about\n * @return uint startDate of staking\n * @return uint current amount staked\n * @return uint current amount locked for withdrawal\n * @return uint reporter's last reported timestamp\n * @return uint total number of reports submitted by reporter\n */\n function getStakerInfo(address _staker)\n external\n view\n returns (\n uint256,\n uint256,\n uint256,\n uint256,\n uint256\n )\n {\n return (\n stakerDetails[_staker].startDate,\n stakerDetails[_staker].stakedBalance,\n stakerDetails[_staker].lockedBalance,\n stakerDetails[_staker].reporterLastTimestamp,\n stakerDetails[_staker].reportsSubmitted\n );\n }\n\n // Getters\n /**\n * @dev Returns the amount that an address is alowed to spend of behalf of another\n * @param _owner The address which owns the tokens\n * @param _spender The address that will use the tokens\n * @return uint256 The amount of allowed tokens\n */\n function allowance(address _owner, address _spender)\n public\n view\n virtual\n returns (uint256)\n {\n return _allowances[_owner][_spender];\n }\n\n /**\n * @dev Returns the balance of a given user.\n * @param _account user address\n * @return uint256 user's token balance\n */\n function balanceOf(address _account) public view returns (uint256) {\n return _balances[_account];\n }\n\n /**\n * @dev Returns the number of decimals used to get its user representation.\n * @return uint8 the number of decimals; used only for display purposes\n */\n function decimals() public view returns (uint8) {\n return _decimals;\n }\n\n /**\n * @dev Counts the number of values that have been submitted for a given ID\n * @param _queryId the ID to look up\n * @return uint256 count of the number of values received for the queryId\n */\n function getNewValueCountbyQueryId(bytes32 _queryId)\n public\n view\n returns (uint256)\n {\n return timestamps[_queryId].length;\n }\n\n /**\n * @dev Gets the timestamp for the value based on their index\n * @param _queryId is the queryId to look up\n * @param _index is the value index to look up\n * @return uint256 timestamp\n */\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index)\n public\n view\n returns (uint256)\n {\n uint256 len = timestamps[_queryId].length;\n if (len == 0 || len <= _index) return 0;\n return timestamps[_queryId][_index];\n }\n\n /**\n * @dev Returns an array of voting rounds for a given vote\n * @param _hash is the identifier hash for a vote\n * @return uint256[] memory dispute IDs of the vote rounds\n */\n function getVoteRounds(bytes32 _hash)\n public\n view\n returns (uint256[] memory)\n {\n return voteRounds[_hash];\n }\n\n /**\n * @dev Returns the governance address of the contract\n * @return address (this address)\n */\n function governance() external view returns(address){\n return address(this);\n }\n \n /**\n * @dev Returns the name of the token.\n * @return string name of the token\n */\n function name() public view returns (string memory) {\n return _name;\n }\n\n /**\n * @dev Retrieves value from oracle based on queryId/timestamp\n * @param _queryId being requested\n * @param _timestamp to retrieve data/value from\n * @return bytes value for queryId/timestamp submitted\n */\n function retrieveData(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bytes memory)\n {\n return values[_queryId][_timestamp];\n }\n\n /**\n * @dev Returns the symbol of the token.\n * @return string symbol of the token\n */\n function symbol() public view returns (string memory) {\n return _symbol;\n }\n\n /**\n * @dev Returns the total supply of the token.\n * @return uint256 total supply of token\n */\n function totalSupply() public view returns (uint256) {\n return _totalSupply;\n }\n\n // Internal functions\n /**\n * @dev Internal function to approve tokens for the user\n * @param _owner The owner of the tokens\n * @param _spender The address which is allowed to spend the tokens\n * @param _amount The amount that msg.sender is allowing spender to use\n */\n function _approve(\n address _owner,\n address _spender,\n uint256 _amount\n ) internal virtual {\n require(_owner != address(0), \"ERC20: approve from the zero address\");\n require(_spender != address(0), \"ERC20: approve to the zero address\");\n _allowances[_owner][_spender] = _amount;\n emit Approval(_owner, _spender, _amount);\n }\n\n /**\n * @dev Internal function to burn tokens for the user\n * @param _account The address whose tokens to burn\n * @param _amount The quantity of tokens to burn\n */\n function _burn(address _account, uint256 _amount) internal virtual {\n require(_account != address(0), \"ERC20: burn from the zero address\");\n _balances[_account] -= _amount;\n _totalSupply -= _amount;\n emit Transfer(_account, address(0), _amount);\n }\n\n /**\n * @dev Internal function to create new tokens for the user\n * @param _account The address which receives minted tokens\n * @param _amount The quantity of tokens to min\n */\n function _mint(address _account, uint256 _amount) internal virtual {\n require(_account != address(0), \"ERC20: mint to the zero address\");\n _totalSupply += _amount;\n _balances[_account] += _amount;\n emit Transfer(address(0), _account, _amount);\n }\n\n /**\n * @dev Internal function to perform token transfer\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n */\n function _transfer(\n address _sender,\n address _recipient,\n uint256 _amount\n ) internal virtual {\n require(_sender != address(0), \"ERC20: transfer from the zero address\");\n require(\n _recipient != address(0),\n \"ERC20: transfer to the zero address\"\n );\n _balances[_sender] -= _amount;\n _balances[_recipient] += _amount;\n emit Transfer(_sender, _recipient, _amount);\n }\n\n /**\n * @dev Allows this contract to transfer tokens from one user to another\n * @param _sender The address which owns the tokens\n * @param _recipient The destination address\n * @param _amount The quantity of tokens to transfer\n * @return bool Whether the transfer succeeded\n */\n function _transferFrom(\n address _sender,\n address _recipient,\n uint256 _amount\n ) internal virtual returns (bool) {\n _transfer(_sender, _recipient, _amount);\n _approve(\n _sender,\n msg.sender,\n _allowances[_sender][address(this)] - _amount\n );\n return true;\n }\n}" } }, "settings": { @@ -87,12 +87,6 @@ "name": "_value", "type": "bytes" }, - { - "indexed": false, - "internalType": "uint256", - "name": "_reward", - "type": "uint256" - }, { "indexed": false, "internalType": "uint256", @@ -228,6 +222,19 @@ "name": "Transfer", "type": "event" }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addStakingRewards", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -371,30 +378,6 @@ "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentReward", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -685,19 +668,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [], - "name": "timeOfLastNewValue", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -1544,16 +1514,16 @@ } ], "linkReferences": {}, - "object": "608060405242600a553480156200001557600080fd5b506040518060400160405280601081526020017f54656c6c6f72506c617967726f756e6400000000000000000000000000000000815250600e9080519060200190620000639291906200014b565b506040518060400160405280600481526020017f5452425000000000000000000000000000000000000000000000000000000000815250600f9080519060200190620000b19291906200014b565b506012601060006101000a81548160ff021916908360ff16021790555030600080604051602001620000e39062000222565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002d2565b828054620001599062000244565b90600052602060002090601f0160209004810192826200017d5760008555620001c9565b82601f106200019857805160ff1916838001178555620001c9565b82800160010185558215620001c9579182015b82811115620001c8578251825591602001919060010190620001ab565b5b509050620001d89190620001dc565b5090565b5b80821115620001f7576000816000905550600101620001dd565b5090565b60006200020a60148362000239565b91506200021782620002a9565b601482019050919050565b60006200022f82620001fb565b9150819050919050565b600081905092915050565b600060028204905060018216806200025d57607f821691505b602082108114156200027457620002736200027a565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f5f474f5645524e414e43455f434f4e5452414354000000000000000000000000600082015250565b61329980620002e26000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c8063733bdef011610125578063c5958af9116100ad578063ce5e11bf1161007c578063ce5e11bf1461068f578063dd62ed3e146106bf578063e07c5486146106ef578063ef0234ad1461071f578063f25133f31461073b57610211565b8063c5958af9146105f5578063c638407114610625578063c979fe9f14610643578063cb82cc8f1461067357610211565b806396426d97116100f457806396426d9714610550578063a1e588a51461056e578063a9059cbb1461059f578063b86d1d63146105cf578063bed9d861146105eb57610211565b8063733bdef0146104b257806377b03e0d146104e65780638929f4c61461051657806395d89b411461053257610211565b8063313ce567116101a857806364473df21161017757806364473df2146103e6578063699f200f1461041657806369d43bd3146104465780636fd4f2291461046457806370a082311461048257610211565b8063313ce5671461035e5780635aa6e6751461037c5780635eaa9ced1461039a578063602bf227146103b657610211565b80631f379acc116101e45780631f379acc146102b2578063217053c0146102ce57806323b872dd146102fe578063248638e51461032e57610211565b806306fdde0314610216578063091b50ff14610234578063095ea7b31461026457806318160ddd14610294575b600080fd5b61021e61076b565b60405161022b91906128fb565b60405180910390f35b61024e600480360381019061024991906123c3565b6107fd565b60405161025b91906128d9565b60405180910390f35b61027e600480360381019061027991906122c6565b6108aa565b60405161028b919061283f565b60405180910390f35b61029c6108c1565b6040516102a99190612a7d565b60405180910390f35b6102cc60048036038101906102c791906123c3565b6108cb565b005b6102e860048036038101906102e391906123c3565b6109cf565b6040516102f591906127d9565b60405180910390f35b61031860048036038101906103139190612277565b610a11565b604051610325919061283f565b60405180910390f35b61034860048036038101906103439190612302565b610abb565b604051610355919061281d565b60405180910390f35b610366610b26565b6040516103739190612b52565b60405180910390f35b610384610b3d565b60405161039191906127d9565b60405180910390f35b6103b460048036038101906103af919061232b565b610b45565b005b6103d060048036038101906103cb9190612302565b610e32565b6040516103dd9190612a7d565b60405180910390f35b61040060048036038101906103fb91906123c3565b610e4a565b60405161040d919061283f565b60405180910390f35b610430600480360381019061042b9190612302565b610e79565b60405161043d91906127d9565b60405180910390f35b61044e610eac565b60405161045b9190612a7d565b60405180910390f35b61046c610eb2565b6040516104799190612a7d565b60405180910390f35b61049c60048036038101906104979190612212565b610eb8565b6040516104a99190612a7d565b60405180910390f35b6104cc60048036038101906104c79190612212565b610f01565b6040516104dd959493929190612aff565b60405180910390f35b61050060048036038101906104fb9190612302565b61106b565b60405161050d9190612a7d565b60405180910390f35b610530600480360381019061052b9190612466565b61108b565b005b61053a611191565b60405161054791906128fb565b60405180910390f35b610558611223565b6040516105659190612a7d565b60405180910390f35b61058860048036038101906105839190612302565b61122f565b604051610596929190612a98565b60405180910390f35b6105b960048036038101906105b491906122c6565b6112bf565b6040516105c6919061283f565b60405180910390f35b6105e960048036038101906105e49190612212565b6112d6565b005b6105f36112ec565b005b61060f600480360381019061060a91906123c3565b61141e565b60405161061c91906128d9565b60405180910390f35b61062d6114d5565b60405161063a9190612a7d565b60405180910390f35b61065d600480360381019061065891906123c3565b6114db565b60405161066a9190612a7d565b60405180910390f35b61068d60048036038101906106889190612466565b61150c565b005b6106a960048036038101906106a491906123c3565b611630565b6040516106b69190612a7d565b60405180910390f35b6106d960048036038101906106d4919061223b565b6116ca565b6040516106e69190612a7d565b60405180910390f35b610709600480360381019061070491906123c3565b611751565b60405161071691906127d9565b60405180910390f35b610739600480360381019061073491906123ff565b6117a0565b005b610755600480360381019061075091906123c3565b6118ca565b6040516107629190612a7d565b60405180910390f35b6060600e805461077a90612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546107a690612dea565b80156107f35780601f106107c8576101008083540402835291602001916107f3565b820191906000526020600020905b8154815290600101906020018083116107d657829003601f168201915b5050505050905090565b600660205281600052604060002060205280600052604060002060009150915050805461082990612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461085590612dea565b80156108a25780601f10610877576101008083540402835291602001916108a2565b820191906000526020600020905b81548152906001019060200180831161088557829003601f168201915b505050505081565b60006108b73384846118fb565b6001905092915050565b6000600d54905090565b604051806020016040528060008152506006600084815260200190815260200160002060008381526020019081526020016000209080519060200190610912929190611ff8565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600c600081548092919061096290612e4d565b919050555060076000838360405160200161097e9291906127ad565b604051602081830303815290604052805190602001208152602001908152602001600020600c5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610a1e848484611ac6565b610ab0843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610aab9190612d15565b6118fb565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b1a57602002820191906000526020600020905b815481526020019060010190808311610b06575b50505050509050919050565b6000601060009054906101000a900460ff16905090565b600030905090565b60046000868152602001908152602001600020805490508214610b9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b949061299d565b60405180910390fd5b8080519060200120851480610bb6575060648560001c11155b610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec9061295d565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610c2892919061207e565b5060046000868152602001908152602001600020429080600181540180825580915050600190039060005260206000200160009091909190915055600080610c6f8761122f565b9150915060008282610c819190612c34565b1115610c9e57610c9c338383610c979190612c34565b6112bf565b505b42600a8190555081600b6000828254610cb79190612d15565b92505081905550600060056000898152602001908152602001600020819055503360026000898152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610dd490612e4d565b91905055507fab1d593f8e2ecb165106e30a39db6769078d35c3fdbb110f24932f0d7af68c29874288888587610e0a9190612c34565b898933604051610e2198979695949392919061285a565b60405180910390a150505050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110c90612a3d565b60405180910390fd5b428160000181905550818160020160008282546111329190612c34565b925050819055508181600101600082825461114d9190612d15565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516111859291906127f4565b60405180910390a15050565b6060600f80546111a090612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546111cc90612dea565b80156112195780601f106111ee57610100808354040283529160200191611219565b820191906000526020600020905b8154815290600101906020018083116111fc57829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000806000600a54426112429190612d15565b9050600061012c6706f05b59d3b200008361125d9190612cbb565b6112679190612c8a565b9050600b54816112779190612c34565b61128030610eb8565b101561129f57600b5461129230610eb8565b61129c9190612d15565b90505b600560008681526020019081526020016000205481935093505050915091565b60006112cc338484611ac6565b6001905092915050565b6112e981683635c9adc5dea00000611cbc565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426113439190612d15565b1015611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b9061297d565b60405180910390fd5b60008160020154116113cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c2906129fd565b60405180910390fd5b6113da30338360020154611ac6565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec3360405161141391906127d9565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461144f90612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461147b90612dea565b80156114c85780601f1061149d576101008083540402835291602001916114c8565b820191906000526020600020905b8154815290600101906020018083116114ab57829003601f168201915b5050505050905092915050565b600c5481565b600760205281600052604060002081815481106114f757600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816002015411156115ba5781816002015410611587578181600201600082825461157b9190612d15565b925050819055506115b5565b6115a1333083600201548561159c9190612d15565b611e05565b6115aa57600080fd5b600081600201819055505b6115cf565b6115c5333084611e05565b6115ce57600080fd5b5b428160000181905550818160010160008282546115ec9190612c34565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516116249291906127f4565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061165b5750828111155b1561166a5760009150506116c4565b6004600085815260200190815260200160002083815481106116b5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b80805190602001208314806117b9575060648360001c11155b6117f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ef9061295d565b60405180910390fd5b611803333084611ac6565b6002826118109190612c8a565b915061181c3083611eaf565b81600b600082825461182e9190612c34565b92505081905550816005600085815260200190815260200160002060008282546118589190612c34565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff5846005600088815260200190815260200160002054856040516118bd93929190612ac1565b60405180910390a3505050565b600460205281600052604060002081815481106118e657600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561196b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196290612a1d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156119db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d29061293d565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ab99190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2d906129dd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ba6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9d9061291d565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bf59190612d15565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c4b9190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611caf9190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2390612a5d565b60405180910390fd5b80600d6000828254611d3e9190612c34565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d949190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611df99190612a7d565b60405180910390a35050565b6000611e12848484611ac6565b611ea4843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9f9190612d15565b6118fb565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f16906129bd565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f6e9190612d15565b9250508190555080600d6000828254611f879190612d15565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fec9190612a7d565b60405180910390a35050565b82805461200490612dea565b90600052602060002090601f016020900481019282612026576000855561206d565b82601f1061203f57805160ff191683800117855561206d565b8280016001018555821561206d579182015b8281111561206c578251825591602001919060010190612051565b5b50905061207a9190612104565b5090565b82805461208a90612dea565b90600052602060002090601f0160209004810192826120ac57600085556120f3565b82601f106120c557803560ff19168380011785556120f3565b828001600101855582156120f3579182015b828111156120f25782358255916020019190600101906120d7565b5b5090506121009190612104565b5090565b5b8082111561211d576000816000905550600101612105565b5090565b600061213461212f84612b92565b612b6d565b90508281526020810184848401111561214c57600080fd5b612157848285612da8565b509392505050565b60008135905061216e8161321e565b92915050565b60008135905061218381613235565b92915050565b60008083601f84011261219b57600080fd5b8235905067ffffffffffffffff8111156121b457600080fd5b6020830191508360018202830111156121cc57600080fd5b9250929050565b600082601f8301126121e457600080fd5b81356121f4848260208601612121565b91505092915050565b60008135905061220c8161324c565b92915050565b60006020828403121561222457600080fd5b60006122328482850161215f565b91505092915050565b6000806040838503121561224e57600080fd5b600061225c8582860161215f565b925050602061226d8582860161215f565b9150509250929050565b60008060006060848603121561228c57600080fd5b600061229a8682870161215f565b93505060206122ab8682870161215f565b92505060406122bc868287016121fd565b9150509250925092565b600080604083850312156122d957600080fd5b60006122e78582860161215f565b92505060206122f8858286016121fd565b9150509250929050565b60006020828403121561231457600080fd5b600061232284828501612174565b91505092915050565b60008060008060006080868803121561234357600080fd5b600061235188828901612174565b955050602086013567ffffffffffffffff81111561236e57600080fd5b61237a88828901612189565b9450945050604061238d888289016121fd565b925050606086013567ffffffffffffffff8111156123aa57600080fd5b6123b6888289016121d3565b9150509295509295909350565b600080604083850312156123d657600080fd5b60006123e485828601612174565b92505060206123f5858286016121fd565b9150509250929050565b60008060006060848603121561241457600080fd5b600061242286828701612174565b9350506020612433868287016121fd565b925050604084013567ffffffffffffffff81111561245057600080fd5b61245c868287016121d3565b9150509250925092565b60006020828403121561247857600080fd5b6000612486848285016121fd565b91505092915050565b600061249b8383612769565b60208301905092915050565b6124b081612d49565b82525050565b60006124c182612bd3565b6124cb8185612c01565b93506124d683612bc3565b8060005b838110156125075781516124ee888261248f565b97506124f983612bf4565b9250506001810190506124da565b5085935050505092915050565b61251d81612d5b565b82525050565b61252c81612d67565b82525050565b61254361253e82612d67565b612e96565b82525050565b60006125558385612c12565b9350612562838584612da8565b61256b83612f66565b840190509392505050565b600061258182612bde565b61258b8185612c12565b935061259b818560208601612db7565b6125a481612f66565b840191505092915050565b60006125ba82612be9565b6125c48185612c23565b93506125d4818560208601612db7565b6125dd81612f66565b840191505092915050565b60006125f5602383612c23565b915061260082612f77565b604082019050919050565b6000612618602283612c23565b915061262382612fc6565b604082019050919050565b600061263b601d83612c23565b915061264682613015565b602082019050919050565b600061265e601283612c23565b91506126698261303e565b602082019050919050565b6000612681601783612c23565b915061268c82613067565b602082019050919050565b60006126a4602183612c23565b91506126af82613090565b604082019050919050565b60006126c7602583612c23565b91506126d2826130df565b604082019050919050565b60006126ea602283612c23565b91506126f58261312e565b604082019050919050565b600061270d602483612c23565b91506127188261317d565b604082019050919050565b6000612730601b83612c23565b915061273b826131cc565b602082019050919050565b6000612753601f83612c23565b915061275e826131f5565b602082019050919050565b61277281612d91565b82525050565b61278181612d91565b82525050565b61279861279382612d91565b612ea0565b82525050565b6127a781612d9b565b82525050565b60006127b98285612532565b6020820191506127c98284612787565b6020820191508190509392505050565b60006020820190506127ee60008301846124a7565b92915050565b600060408201905061280960008301856124a7565b6128166020830184612778565b9392505050565b6000602082019050818103600083015261283781846124b6565b905092915050565b60006020820190506128546000830184612514565b92915050565b600060e08201905061286f600083018b612523565b61287c602083018a612778565b818103604083015261288f81888a612549565b905061289e6060830187612778565b6128ab6080830186612778565b81810360a08301526128bd8185612576565b90506128cc60c08301846124a7565b9998505050505050505050565b600060208201905081810360008301526128f38184612576565b905092915050565b6000602082019050818103600083015261291581846125af565b905092915050565b60006020820190508181036000830152612936816125e8565b9050919050565b600060208201905081810360008301526129568161260b565b9050919050565b600060208201905081810360008301526129768161262e565b9050919050565b6000602082019050818103600083015261299681612651565b9050919050565b600060208201905081810360008301526129b681612674565b9050919050565b600060208201905081810360008301526129d681612697565b9050919050565b600060208201905081810360008301526129f6816126ba565b9050919050565b60006020820190508181036000830152612a16816126dd565b9050919050565b60006020820190508181036000830152612a3681612700565b9050919050565b60006020820190508181036000830152612a5681612723565b9050919050565b60006020820190508181036000830152612a7681612746565b9050919050565b6000602082019050612a926000830184612778565b92915050565b6000604082019050612aad6000830185612778565b612aba6020830184612778565b9392505050565b6000606082019050612ad66000830186612778565b612ae36020830185612778565b8181036040830152612af58184612576565b9050949350505050565b600060a082019050612b146000830188612778565b612b216020830187612778565b612b2e6040830186612778565b612b3b6060830185612778565b612b486080830184612778565b9695505050505050565b6000602082019050612b67600083018461279e565b92915050565b6000612b77612b88565b9050612b838282612e1c565b919050565b6000604051905090565b600067ffffffffffffffff821115612bad57612bac612f37565b5b612bb682612f66565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612c3f82612d91565b9150612c4a83612d91565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612c7f57612c7e612eaa565b5b828201905092915050565b6000612c9582612d91565b9150612ca083612d91565b925082612cb057612caf612ed9565b5b828204905092915050565b6000612cc682612d91565b9150612cd183612d91565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612d0a57612d09612eaa565b5b828202905092915050565b6000612d2082612d91565b9150612d2b83612d91565b925082821015612d3e57612d3d612eaa565b5b828203905092915050565b6000612d5482612d71565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612dd5578082015181840152602081019050612dba565b83811115612de4576000848401525b50505050565b60006002820490506001821680612e0257607f821691505b60208210811415612e1657612e15612f08565b5b50919050565b612e2582612f66565b810181811067ffffffffffffffff82111715612e4457612e43612f37565b5b80604052505050565b6000612e5882612d91565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612e8b57612e8a612eaa565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e63652073686f756c6420626520636f7272656374000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61322781612d49565b811461323257600080fd5b50565b61323e81612d67565b811461324957600080fd5b50565b61325581612d91565b811461326057600080fd5b5056fea26469706673582212205747f0fa66590dfa09380f3385223fd9b03ed7174dc806da9f3313f1bb28176c64736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE TIMESTAMP PUSH1 0xA SSTORE CALLVALUE DUP1 ISZERO PUSH3 0x15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x10 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54656C6C6F72506C617967726F756E6400000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0xE SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x63 SWAP3 SWAP2 SWAP1 PUSH3 0x14B JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5452425000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0xF SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0xB1 SWAP3 SWAP2 SWAP1 PUSH3 0x14B JUMP JUMPDEST POP PUSH1 0x12 PUSH1 0x10 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP ADDRESS PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0xE3 SWAP1 PUSH3 0x222 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x2D2 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0x159 SWAP1 PUSH3 0x244 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0x17D JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0x1C9 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0x198 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0x1C9 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0x1C9 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0x1C8 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0x1AB JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0x1D8 SWAP2 SWAP1 PUSH3 0x1DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0x1F7 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0x1DD JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x20A PUSH1 0x14 DUP4 PUSH3 0x239 JUMP JUMPDEST SWAP2 POP PUSH3 0x217 DUP3 PUSH3 0x2A9 JUMP JUMPDEST PUSH1 0x14 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x22F DUP3 PUSH3 0x1FB JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH3 0x25D JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0x274 JUMPI PUSH3 0x273 PUSH3 0x27A JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x5F474F5645524E414E43455F434F4E5452414354000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3299 DUP1 PUSH3 0x2E2 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x211 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x733BDEF0 GT PUSH2 0x125 JUMPI DUP1 PUSH4 0xC5958AF9 GT PUSH2 0xAD JUMPI DUP1 PUSH4 0xCE5E11BF GT PUSH2 0x7C JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x68F JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x6BF JUMPI DUP1 PUSH4 0xE07C5486 EQ PUSH2 0x6EF JUMPI DUP1 PUSH4 0xEF0234AD EQ PUSH2 0x71F JUMPI DUP1 PUSH4 0xF25133F3 EQ PUSH2 0x73B JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x5F5 JUMPI DUP1 PUSH4 0xC6384071 EQ PUSH2 0x625 JUMPI DUP1 PUSH4 0xC979FE9F EQ PUSH2 0x643 JUMPI DUP1 PUSH4 0xCB82CC8F EQ PUSH2 0x673 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x96426D97 GT PUSH2 0xF4 JUMPI DUP1 PUSH4 0x96426D97 EQ PUSH2 0x550 JUMPI DUP1 PUSH4 0xA1E588A5 EQ PUSH2 0x56E JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x59F JUMPI DUP1 PUSH4 0xB86D1D63 EQ PUSH2 0x5CF JUMPI DUP1 PUSH4 0xBED9D861 EQ PUSH2 0x5EB JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x733BDEF0 EQ PUSH2 0x4B2 JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x4E6 JUMPI DUP1 PUSH4 0x8929F4C6 EQ PUSH2 0x516 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x532 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x1A8 JUMPI DUP1 PUSH4 0x64473DF2 GT PUSH2 0x177 JUMPI DUP1 PUSH4 0x64473DF2 EQ PUSH2 0x3E6 JUMPI DUP1 PUSH4 0x699F200F EQ PUSH2 0x416 JUMPI DUP1 PUSH4 0x69D43BD3 EQ PUSH2 0x446 JUMPI DUP1 PUSH4 0x6FD4F229 EQ PUSH2 0x464 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x482 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 EQ PUSH2 0x35E JUMPI DUP1 PUSH4 0x5AA6E675 EQ PUSH2 0x37C JUMPI DUP1 PUSH4 0x5EAA9CED EQ PUSH2 0x39A JUMPI DUP1 PUSH4 0x602BF227 EQ PUSH2 0x3B6 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x1F379ACC GT PUSH2 0x1E4 JUMPI DUP1 PUSH4 0x1F379ACC EQ PUSH2 0x2B2 JUMPI DUP1 PUSH4 0x217053C0 EQ PUSH2 0x2CE JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2FE JUMPI DUP1 PUSH4 0x248638E5 EQ PUSH2 0x32E JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x216 JUMPI DUP1 PUSH4 0x91B50FF EQ PUSH2 0x234 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x264 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x294 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x21E PUSH2 0x76B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x22B SWAP2 SWAP1 PUSH2 0x28FB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x24E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x249 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x7FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x25B SWAP2 SWAP1 PUSH2 0x28D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x27E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x279 SWAP2 SWAP1 PUSH2 0x22C6 JUMP JUMPDEST PUSH2 0x8AA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x28B SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x29C PUSH2 0x8C1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2A9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2CC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2C7 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x8CB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2E8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2E3 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x9CF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2F5 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x318 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x313 SWAP2 SWAP1 PUSH2 0x2277 JUMP JUMPDEST PUSH2 0xA11 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x325 SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x348 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x343 SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0xABB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x355 SWAP2 SWAP1 PUSH2 0x281D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x366 PUSH2 0xB26 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x373 SWAP2 SWAP1 PUSH2 0x2B52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x384 PUSH2 0xB3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x391 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3B4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3AF SWAP2 SWAP1 PUSH2 0x232B JUMP JUMPDEST PUSH2 0xB45 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3D0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3CB SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0xE32 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3DD SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x400 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3FB SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0xE4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x40D SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x430 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x42B SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0xE79 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x43D SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x44E PUSH2 0xEAC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x45B SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x46C PUSH2 0xEB2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x479 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x49C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x497 SWAP2 SWAP1 PUSH2 0x2212 JUMP JUMPDEST PUSH2 0xEB8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4CC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4C7 SWAP2 SWAP1 PUSH2 0x2212 JUMP JUMPDEST PUSH2 0xF01 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4DD SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2AFF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x500 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4FB SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0x106B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x50D SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x530 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x52B SWAP2 SWAP1 PUSH2 0x2466 JUMP JUMPDEST PUSH2 0x108B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x53A PUSH2 0x1191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x547 SWAP2 SWAP1 PUSH2 0x28FB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x558 PUSH2 0x1223 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x565 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x588 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x583 SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0x122F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x596 SWAP3 SWAP2 SWAP1 PUSH2 0x2A98 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5B9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B4 SWAP2 SWAP1 PUSH2 0x22C6 JUMP JUMPDEST PUSH2 0x12BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5C6 SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5E9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5E4 SWAP2 SWAP1 PUSH2 0x2212 JUMP JUMPDEST PUSH2 0x12D6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5F3 PUSH2 0x12EC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x60F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x60A SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x141E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61C SWAP2 SWAP1 PUSH2 0x28D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x62D PUSH2 0x14D5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x63A SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x65D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x658 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x14DB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66A SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x68D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x688 SWAP2 SWAP1 PUSH2 0x2466 JUMP JUMPDEST PUSH2 0x150C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6A4 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x1630 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6B6 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6D9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6D4 SWAP2 SWAP1 PUSH2 0x223B JUMP JUMPDEST PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6E6 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x709 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x704 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x1751 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x716 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x739 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x734 SWAP2 SWAP1 PUSH2 0x23FF JUMP JUMPDEST PUSH2 0x17A0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x755 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x750 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x762 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0xE DUP1 SLOAD PUSH2 0x77A SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x7A6 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7F3 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x7C8 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7F3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x7D6 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP POP DUP1 SLOAD PUSH2 0x829 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x855 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x8A2 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x877 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x8A2 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x885 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8B7 CALLER DUP5 DUP5 PUSH2 0x18FB JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x912 SWAP3 SWAP2 SWAP1 PUSH2 0x1FF8 JUMP JUMPDEST POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x962 SWAP1 PUSH2 0x2E4D JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x97E SWAP3 SWAP2 SWAP1 PUSH2 0x27AD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC SLOAD SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA1E DUP5 DUP5 DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH2 0xAB0 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xAAB SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST PUSH2 0x18FB JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0xB1A JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0xB06 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x10 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 ADDRESS SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP DUP3 EQ PUSH2 0xB9D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB94 SWAP1 PUSH2 0x299D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 EQ DUP1 PUSH2 0xBB6 JUMPI POP PUSH1 0x64 DUP6 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0xBF5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBEC SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 SWAP1 PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x207E JUMP JUMPDEST POP PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 TIMESTAMP SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE PUSH1 0x0 DUP1 PUSH2 0xC6F DUP8 PUSH2 0x122F JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 DUP3 DUP3 PUSH2 0xC81 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST GT ISZERO PUSH2 0xC9E JUMPI PUSH2 0xC9C CALLER DUP4 DUP4 PUSH2 0xC97 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST PUSH2 0x12BF JUMP JUMPDEST POP JUMPDEST TIMESTAMP PUSH1 0xA DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0xCB7 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP CALLER PUSH1 0x2 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP TIMESTAMP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0xDD4 SWAP1 PUSH2 0x2E4D JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH32 0xAB1D593F8E2ECB165106E30A39DB6769078D35C3FDBB110F24932F0D7AF68C29 DUP8 TIMESTAMP DUP9 DUP9 DUP6 DUP8 PUSH2 0xE0A SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST DUP10 DUP10 CALLER PUSH1 0x40 MLOAD PUSH2 0xE21 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP12 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP2 SWAP4 SWAP6 SWAP1 SWAP3 SWAP5 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x1 ADD SLOAD LT ISZERO PUSH2 0x1115 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x110C SWAP1 PUSH2 0x2A3D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1132 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x114D SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0x3D8D9DF4BD0172DF32E557FA48E96435CD7F2CAC06AAFFACFAEE608E6F7898EF CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x1185 SWAP3 SWAP2 SWAP1 PUSH2 0x27F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xF DUP1 SLOAD PUSH2 0x11A0 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x11CC SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1219 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x11EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1219 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x11FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0x6F05B59D3B20000 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA SLOAD TIMESTAMP PUSH2 0x1242 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x12C PUSH8 0x6F05B59D3B20000 DUP4 PUSH2 0x125D SWAP2 SWAP1 PUSH2 0x2CBB JUMP JUMPDEST PUSH2 0x1267 SWAP2 SWAP1 PUSH2 0x2C8A JUMP JUMPDEST SWAP1 POP PUSH1 0xB SLOAD DUP2 PUSH2 0x1277 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST PUSH2 0x1280 ADDRESS PUSH2 0xEB8 JUMP JUMPDEST LT ISZERO PUSH2 0x129F JUMPI PUSH1 0xB SLOAD PUSH2 0x1292 ADDRESS PUSH2 0xEB8 JUMP JUMPDEST PUSH2 0x129C SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x5 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP2 SWAP4 POP SWAP4 POP POP POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x12CC CALLER DUP5 DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x12E9 DUP2 PUSH9 0x3635C9ADC5DEA00000 PUSH2 0x1CBC JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH3 0x93A80 DUP2 PUSH1 0x0 ADD SLOAD TIMESTAMP PUSH2 0x1343 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST LT ISZERO PUSH2 0x1384 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x137B SWAP1 PUSH2 0x297D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT PUSH2 0x13CB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13C2 SWAP1 PUSH2 0x29FD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x13DA ADDRESS CALLER DUP4 PUSH1 0x2 ADD SLOAD PUSH2 0x1AC6 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH32 0x4A7934670BD8304E7DA22378BE1368F7C4FEF17C5AEE81804BEDA8638FE428EC CALLER PUSH1 0x40 MLOAD PUSH2 0x1413 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x144F SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x147B SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x14C8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x149D JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x14C8 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x14AB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xC SLOAD DUP2 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x14F7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT ISZERO PUSH2 0x15BA JUMPI DUP2 DUP2 PUSH1 0x2 ADD SLOAD LT PUSH2 0x1587 JUMPI DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x157B SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x15B5 JUMP JUMPDEST PUSH2 0x15A1 CALLER ADDRESS DUP4 PUSH1 0x2 ADD SLOAD DUP6 PUSH2 0x159C SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST PUSH2 0x1E05 JUMP JUMPDEST PUSH2 0x15AA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP JUMPDEST PUSH2 0x15CF JUMP JUMPDEST PUSH2 0x15C5 CALLER ADDRESS DUP5 PUSH2 0x1E05 JUMP JUMPDEST PUSH2 0x15CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15EC SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0xA96C2CCE65119A2170D1711A6E82F18F2006448828483BA7545E595476543647 CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x1624 SWAP3 SWAP2 SWAP1 PUSH2 0x27F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP2 EQ DUP1 PUSH2 0x165B JUMPI POP DUP3 DUP2 GT ISZERO JUMPDEST ISZERO PUSH2 0x166A JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x16C4 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x16B5 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD SLOAD SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP4 EQ DUP1 PUSH2 0x17B9 JUMPI POP PUSH1 0x64 DUP4 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0x17F8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17EF SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1803 CALLER ADDRESS DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH2 0x1810 SWAP2 SWAP1 PUSH2 0x2C8A JUMP JUMPDEST SWAP2 POP PUSH2 0x181C ADDRESS DUP4 PUSH2 0x1EAF JUMP JUMPDEST DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x182E SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1858 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xD951D408A0F5057DA5C25B826FB5CE403D56542962B6AC6994DBC6D5432FBFF5 DUP5 PUSH1 0x5 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP6 PUSH1 0x40 MLOAD PUSH2 0x18BD SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2AC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x18E6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x196B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1962 SWAP1 PUSH2 0x2A1D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x19DB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19D2 SWAP1 PUSH2 0x293D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x8 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1AB9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1B36 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B2D SWAP1 PUSH2 0x29DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1BA6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B9D SWAP1 PUSH2 0x291D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1BF5 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C4B SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1CAF SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1D2C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D23 SWAP1 PUSH2 0x2A5D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D3E SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D94 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1DF9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E12 DUP5 DUP5 DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH2 0x1EA4 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x1E9F SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST PUSH2 0x18FB JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1F1F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1F16 SWAP1 PUSH2 0x29BD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F6E SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F87 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1FEC SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x2004 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x2026 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x206D JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x203F JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x206D JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x206D JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x206C JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2051 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x207A SWAP2 SWAP1 PUSH2 0x2104 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x208A SWAP1 PUSH2 0x2DEA JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x20AC JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x20F3 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x20C5 JUMPI DUP1 CALLDATALOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x20F3 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x20F3 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x20F2 JUMPI DUP3 CALLDATALOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x20D7 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2100 SWAP2 SWAP1 PUSH2 0x2104 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x211D JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2105 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2134 PUSH2 0x212F DUP5 PUSH2 0x2B92 JUMP JUMPDEST PUSH2 0x2B6D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x214C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2157 DUP5 DUP3 DUP6 PUSH2 0x2DA8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x216E DUP2 PUSH2 0x321E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2183 DUP2 PUSH2 0x3235 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x219B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x21B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x21CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x21E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x21F4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2121 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x220C DUP2 PUSH2 0x324C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2224 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2232 DUP5 DUP3 DUP6 ADD PUSH2 0x215F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x224E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x225C DUP6 DUP3 DUP7 ADD PUSH2 0x215F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x226D DUP6 DUP3 DUP7 ADD PUSH2 0x215F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x228C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x229A DUP7 DUP3 DUP8 ADD PUSH2 0x215F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x22AB DUP7 DUP3 DUP8 ADD PUSH2 0x215F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x22BC DUP7 DUP3 DUP8 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x22D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22E7 DUP6 DUP3 DUP7 ADD PUSH2 0x215F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22F8 DUP6 DUP3 DUP7 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2314 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2322 DUP5 DUP3 DUP6 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x2343 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2351 DUP9 DUP3 DUP10 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x236E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x237A DUP9 DUP3 DUP10 ADD PUSH2 0x2189 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 PUSH2 0x238D DUP9 DUP3 DUP10 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x23AA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x23B6 DUP9 DUP3 DUP10 ADD PUSH2 0x21D3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x23D6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x23E4 DUP6 DUP3 DUP7 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x23F5 DUP6 DUP3 DUP7 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2414 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2422 DUP7 DUP3 DUP8 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2433 DUP7 DUP3 DUP8 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2450 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x245C DUP7 DUP3 DUP8 ADD PUSH2 0x21D3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2478 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2486 DUP5 DUP3 DUP6 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x249B DUP4 DUP4 PUSH2 0x2769 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x24B0 DUP2 PUSH2 0x2D49 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24C1 DUP3 PUSH2 0x2BD3 JUMP JUMPDEST PUSH2 0x24CB DUP2 DUP6 PUSH2 0x2C01 JUMP JUMPDEST SWAP4 POP PUSH2 0x24D6 DUP4 PUSH2 0x2BC3 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2507 JUMPI DUP2 MLOAD PUSH2 0x24EE DUP9 DUP3 PUSH2 0x248F JUMP JUMPDEST SWAP8 POP PUSH2 0x24F9 DUP4 PUSH2 0x2BF4 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x24DA JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x251D DUP2 PUSH2 0x2D5B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x252C DUP2 PUSH2 0x2D67 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2543 PUSH2 0x253E DUP3 PUSH2 0x2D67 JUMP JUMPDEST PUSH2 0x2E96 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2555 DUP4 DUP6 PUSH2 0x2C12 JUMP JUMPDEST SWAP4 POP PUSH2 0x2562 DUP4 DUP6 DUP5 PUSH2 0x2DA8 JUMP JUMPDEST PUSH2 0x256B DUP4 PUSH2 0x2F66 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2581 DUP3 PUSH2 0x2BDE JUMP JUMPDEST PUSH2 0x258B DUP2 DUP6 PUSH2 0x2C12 JUMP JUMPDEST SWAP4 POP PUSH2 0x259B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2DB7 JUMP JUMPDEST PUSH2 0x25A4 DUP2 PUSH2 0x2F66 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25BA DUP3 PUSH2 0x2BE9 JUMP JUMPDEST PUSH2 0x25C4 DUP2 DUP6 PUSH2 0x2C23 JUMP JUMPDEST SWAP4 POP PUSH2 0x25D4 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2DB7 JUMP JUMPDEST PUSH2 0x25DD DUP2 PUSH2 0x2F66 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F5 PUSH1 0x23 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2600 DUP3 PUSH2 0x2F77 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2618 PUSH1 0x22 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2623 DUP3 PUSH2 0x2FC6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x263B PUSH1 0x1D DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2646 DUP3 PUSH2 0x3015 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x265E PUSH1 0x12 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2669 DUP3 PUSH2 0x303E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2681 PUSH1 0x17 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x268C DUP3 PUSH2 0x3067 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26A4 PUSH1 0x21 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x26AF DUP3 PUSH2 0x3090 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26C7 PUSH1 0x25 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x26D2 DUP3 PUSH2 0x30DF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26EA PUSH1 0x22 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x26F5 DUP3 PUSH2 0x312E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x270D PUSH1 0x24 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2718 DUP3 PUSH2 0x317D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2730 PUSH1 0x1B DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x273B DUP3 PUSH2 0x31CC JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2753 PUSH1 0x1F DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x275E DUP3 PUSH2 0x31F5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2772 DUP2 PUSH2 0x2D91 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2781 DUP2 PUSH2 0x2D91 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2798 PUSH2 0x2793 DUP3 PUSH2 0x2D91 JUMP JUMPDEST PUSH2 0x2EA0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x27A7 DUP2 PUSH2 0x2D9B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27B9 DUP3 DUP6 PUSH2 0x2532 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x27C9 DUP3 DUP5 PUSH2 0x2787 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27EE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24A7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2809 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x24A7 JUMP JUMPDEST PUSH2 0x2816 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2837 DUP2 DUP5 PUSH2 0x24B6 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2854 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2514 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 ADD SWAP1 POP PUSH2 0x286F PUSH1 0x0 DUP4 ADD DUP12 PUSH2 0x2523 JUMP JUMPDEST PUSH2 0x287C PUSH1 0x20 DUP4 ADD DUP11 PUSH2 0x2778 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x288F DUP2 DUP9 DUP11 PUSH2 0x2549 JUMP JUMPDEST SWAP1 POP PUSH2 0x289E PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x28AB PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x2778 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x28BD DUP2 DUP6 PUSH2 0x2576 JUMP JUMPDEST SWAP1 POP PUSH2 0x28CC PUSH1 0xC0 DUP4 ADD DUP5 PUSH2 0x24A7 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28F3 DUP2 DUP5 PUSH2 0x2576 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2915 DUP2 DUP5 PUSH2 0x25AF JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2936 DUP2 PUSH2 0x25E8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2956 DUP2 PUSH2 0x260B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2976 DUP2 PUSH2 0x262E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2996 DUP2 PUSH2 0x2651 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29B6 DUP2 PUSH2 0x2674 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29D6 DUP2 PUSH2 0x2697 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29F6 DUP2 PUSH2 0x26BA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A16 DUP2 PUSH2 0x26DD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A36 DUP2 PUSH2 0x2700 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A56 DUP2 PUSH2 0x2723 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A76 DUP2 PUSH2 0x2746 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2A92 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2AAD PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2ABA PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x2AD6 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2AE3 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2778 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2AF5 DUP2 DUP5 PUSH2 0x2576 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x2B14 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B21 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B2E PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B3B PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B48 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2B67 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x279E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B77 PUSH2 0x2B88 JUMP JUMPDEST SWAP1 POP PUSH2 0x2B83 DUP3 DUP3 PUSH2 0x2E1C JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2BAD JUMPI PUSH2 0x2BAC PUSH2 0x2F37 JUMP JUMPDEST JUMPDEST PUSH2 0x2BB6 DUP3 PUSH2 0x2F66 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C3F DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C4A DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2C7F JUMPI PUSH2 0x2C7E PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C95 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CA0 DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2CB0 JUMPI PUSH2 0x2CAF PUSH2 0x2ED9 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CC6 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CD1 DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2D0A JUMPI PUSH2 0x2D09 PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D20 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2D2B DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2D3E JUMPI PUSH2 0x2D3D PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D54 DUP3 PUSH2 0x2D71 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2DD5 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2DBA JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2DE4 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2E02 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2E16 JUMPI PUSH2 0x2E15 PUSH2 0x2F08 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E25 DUP3 PUSH2 0x2F66 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2E44 JUMPI PUSH2 0x2E43 PUSH2 0x2F37 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E58 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2E8B JUMPI PUSH2 0x2E8A PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6964206D7573742062652068617368206F662062797465732064617461000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x372064617973206469646E277420706173730000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6E6F6E63652073686F756C6420626520636F7272656374000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x7265706F72746572206E6F74206C6F636B656420666F72207769746864726177 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616C000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x696E73756666696369656E74207374616B65642062616C616E63650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3227 DUP2 PUSH2 0x2D49 JUMP JUMPDEST DUP2 EQ PUSH2 0x3232 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x323E DUP2 PUSH2 0x2D67 JUMP JUMPDEST DUP2 EQ PUSH2 0x3249 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3255 DUP2 PUSH2 0x2D91 JUMP JUMPDEST DUP2 EQ PUSH2 0x3260 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 JUMPI SELFBALANCE CREATE STATICCALL PUSH7 0x590DFA09380F33 DUP6 0x22 EXTCODEHASH 0xD9 0xB0 RETURNDATACOPY 0xD7 OR 0x4D 0xC8 MOD 0xDA SWAP16 CALLER SGT CALL 0xBB 0x28 OR PUSH13 0x64736F6C634300080300330000 ", - "sourceMap": "57:18212:0:-:0;;;1832:15;1796:51;;2594:217;;;;;;;;;;2618:26;;;;;;;;;;;;;;;;;:5;:26;;;;;;;;;;;;:::i;:::-;;2654:16;;;;;;;;;;;;;;;;;:7;:16;;;;;;;;;;;;:::i;:::-;;2692:2;2680:9;;:14;;;;;;;;;;;;;;;;;;2799:4;2704:9;:84;2737:40;;;;;;;:::i;:::-;;;;;;;;;;;;;2727:51;;;;;;2704:84;;;;;;;;;;;;:100;;;;;;;;;;;;;;;;;;57:18212;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:402:1:-;;188:85;270:2;265:3;188:85;:::i;:::-;181:92;;282:93;371:3;282:93;:::i;:::-;400:2;395:3;391:12;384:19;;171:238;;;:::o;415:381::-;;622:148;766:3;622:148;:::i;:::-;615:155;;787:3;780:10;;604:192;;;:::o;802:148::-;;941:3;926:18;;916:34;;;;:::o;956:320::-;;1037:1;1031:4;1027:12;1017:22;;1084:1;1078:4;1074:12;1105:18;1095:2;;1161:4;1153:6;1149:17;1139:27;;1095:2;1223;1215:6;1212:14;1192:18;1189:38;1186:2;;;1242:18;;:::i;:::-;1186:2;1007:269;;;;:::o;1282:180::-;1330:77;1327:1;1320:88;1427:4;1424:1;1417:15;1451:4;1448:1;1441:15;1468:170;1608:22;1604:1;1596:6;1592:14;1585:46;1574:64;:::o;57:18212:0:-;;;;;;;" + "object": "60806040523480156200001157600080fd5b506040518060400160405280601081526020017f54656c6c6f72506c617967726f756e6400000000000000000000000000000000815250600d90805190602001906200005f92919062000147565b506040518060400160405280600481526020017f5452425000000000000000000000000000000000000000000000000000000000815250600e9080519060200190620000ad92919062000147565b506012600f60006101000a81548160ff021916908360ff16021790555030600080604051602001620000df906200021e565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002ce565b828054620001559062000240565b90600052602060002090601f016020900481019282620001795760008555620001c5565b82601f106200019457805160ff1916838001178555620001c5565b82800160010185558215620001c5579182015b82811115620001c4578251825591602001919060010190620001a7565b5b509050620001d49190620001d8565b5090565b5b80821115620001f3576000816000905550600101620001d9565b5090565b60006200020660148362000235565b91506200021382620002a5565b601482019050919050565b60006200022b82620001f7565b9150819050919050565b600081905092915050565b600060028204905060018216806200025957607f821691505b6020821081141562000270576200026f62000276565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f5f474f5645524e414e43455f434f4e5452414354000000000000000000000000600082015250565b6130d380620002de6000396000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c806377b03e0d1161011a578063c6384071116100ad578063d9c51cd41161007c578063d9c51cd414610665578063dd62ed3e14610681578063e07c5486146106b1578063ef0234ad146106e1578063f25133f3146106fd57610206565b8063c6384071146105cb578063c979fe9f146105e9578063cb82cc8f14610619578063ce5e11bf1461063557610206565b8063a9059cbb116100e9578063a9059cbb14610545578063b86d1d6314610575578063bed9d86114610591578063c5958af91461059b57610206565b806377b03e0d146104bd5780638929f4c6146104ed57806395d89b411461050957806396426d971461052757610206565b8063313ce5671161019d57806364473df21161016c57806364473df2146103db578063699f200f1461040b57806369d43bd31461043b57806370a0823114610459578063733bdef01461048957610206565b8063313ce567146103535780635aa6e675146103715780635eaa9ced1461038f578063602bf227146103ab57610206565b80631f379acc116101d95780631f379acc146102a7578063217053c0146102c357806323b872dd146102f3578063248638e51461032357610206565b806306fdde031461020b578063091b50ff14610229578063095ea7b31461025957806318160ddd14610289575b600080fd5b61021361072d565b60405161022091906127b8565b60405180910390f35b610243600480360381019061023e919061228e565b6107bf565b6040516102509190612796565b60405180910390f35b610273600480360381019061026e9190612191565b61086c565b604051610280919061270a565b60405180910390f35b610291610883565b60405161029e919061293a565b60405180910390f35b6102c160048036038101906102bc919061228e565b61088d565b005b6102dd60048036038101906102d8919061228e565b610991565b6040516102ea91906126a4565b60405180910390f35b61030d60048036038101906103089190612142565b6109d3565b60405161031a919061270a565b60405180910390f35b61033d600480360381019061033891906121cd565b610a7d565b60405161034a91906126e8565b60405180910390f35b61035b610ae8565b60405161036891906129e6565b60405180910390f35b610379610aff565b60405161038691906126a4565b60405180910390f35b6103a960048036038101906103a491906121f6565b610b07565b005b6103c560048036038101906103c091906121cd565b610d7c565b6040516103d2919061293a565b60405180910390f35b6103f560048036038101906103f0919061228e565b610d94565b604051610402919061270a565b60405180910390f35b610425600480360381019061042091906121cd565b610dc3565b60405161043291906126a4565b60405180910390f35b610443610df6565b604051610450919061293a565b60405180910390f35b610473600480360381019061046e91906120dd565b610dfc565b604051610480919061293a565b60405180910390f35b6104a3600480360381019061049e91906120dd565b610e45565b6040516104b4959493929190612993565b60405180910390f35b6104d760048036038101906104d291906121cd565b610faf565b6040516104e4919061293a565b60405180910390f35b61050760048036038101906105029190612331565b610fcf565b005b6105116110d5565b60405161051e91906127b8565b60405180910390f35b61052f611167565b60405161053c919061293a565b60405180910390f35b61055f600480360381019061055a9190612191565b611173565b60405161056c919061270a565b60405180910390f35b61058f600480360381019061058a91906120dd565b61118a565b005b6105996111a0565b005b6105b560048036038101906105b0919061228e565b6112d2565b6040516105c29190612796565b60405180910390f35b6105d3611389565b6040516105e0919061293a565b60405180910390f35b61060360048036038101906105fe919061228e565b61138f565b604051610610919061293a565b60405180910390f35b610633600480360381019061062e9190612331565b6113c0565b005b61064f600480360381019061064a919061228e565b6114e4565b60405161065c919061293a565b60405180910390f35b61067f600480360381019061067a9190612331565b61157e565b005b61069b60048036038101906106969190612106565b611595565b6040516106a8919061293a565b60405180910390f35b6106cb60048036038101906106c6919061228e565b61161c565b6040516106d891906126a4565b60405180910390f35b6106fb60048036038101906106f691906122ca565b61166b565b005b6107176004803603810190610712919061228e565b611795565b604051610724919061293a565b60405180910390f35b6060600d805461073c90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461076890612c24565b80156107b55780601f1061078a576101008083540402835291602001916107b5565b820191906000526020600020905b81548152906001019060200180831161079857829003601f168201915b5050505050905090565b60066020528160005260406000206020528060005260406000206000915091505080546107eb90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461081790612c24565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b505050505081565b60006108793384846117c6565b6001905092915050565b6000600c54905090565b6040518060200160405280600081525060066000848152602001908152602001600020600083815260200190815260200160002090805190602001906108d4929190611ec3565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600b600081548092919061092490612c87565b9190505550600760008383604051602001610940929190612678565b604051602081830303815290604052805190602001208152602001908152602001600020600b5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109e0848484611991565b610a72843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6d9190612b4f565b6117c6565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610adc57602002820191906000526020600020905b815481526020019060010190808311610ac8575b50505050509050919050565b6000600f60009054906101000a900460ff16905090565b600030905090565b6004600086815260200190815260200160002080549050821480610b2b5750600082145b610b6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b619061285a565b60405180910390fd5b8080519060200120851480610b83575060648560001c11155b610bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb99061281a565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610bf5929190611f49565b50600460008681526020019081526020016000204290806001815401808255809150506001900390600052602060002001600090919091909150553360026000878152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610d2d90612c87565b91905055507f48e9e2c732ba278de6ac88a3a57a5c5ba13d3d8370e709b3b98333a57876ca9585428686868633604051610d6d9796959493929190612725565b60405180910390a15050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611059576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611050906128fa565b60405180910390fd5b428160000181905550818160020160008282546110769190612ac8565b92505081905550818160010160008282546110919190612b4f565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516110c99291906126bf565b60405180910390a15050565b6060600e80546110e490612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461111090612c24565b801561115d5780601f106111325761010080835404028352916020019161115d565b820191906000526020600020905b81548152906001019060200180831161114057829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000611180338484611991565b6001905092915050565b61119d81683635c9adc5dea00000611b87565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426111f79190612b4f565b1015611238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122f9061283a565b60405180910390fd5b600081600201541161127f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611276906128ba565b60405180910390fd5b61128e30338360020154611991565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec336040516112c791906126a4565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461130390612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461132f90612c24565b801561137c5780601f106113515761010080835404028352916020019161137c565b820191906000526020600020905b81548152906001019060200180831161135f57829003601f168201915b5050505050905092915050565b600b5481565b600760205281600052604060002081815481106113ab57600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160020154111561146e578181600201541061143b578181600201600082825461142f9190612b4f565b92505081905550611469565b61145533308360020154856114509190612b4f565b611cd0565b61145e57600080fd5b600081600201819055505b611483565b611479333084611cd0565b61148257600080fd5b5b428160000181905550818160010160008282546114a09190612ac8565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516114d89291906126bf565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061150f5750828111155b1561151e576000915050611578565b600460008581526020019081526020016000208381548110611569577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b611589333083611cd0565b61159257600080fd5b50565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b8080519060200120831480611684575060648360001c11155b6116c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ba9061281a565b60405180910390fd5b6116ce333084611991565b6002826116db9190612b1e565b91506116e73083611d7a565b81600a60008282546116f99190612ac8565b92505081905550816005600085815260200190815260200160002060008282546117239190612ac8565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff58460056000888152602001908152602001600020548560405161178893929190612955565b60405180910390a3505050565b600460205281600052604060002081815481106117b157600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611836576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182d906128da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189d906127fa565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611984919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f89061289a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a68906127da565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ac09190612b4f565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b169190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b7a919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611bf7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bee9061291a565b60405180910390fd5b80600c6000828254611c099190612ac8565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c5f9190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cc4919061293a565b60405180910390a35050565b6000611cdd848484611991565b611d6f843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d6a9190612b4f565b6117c6565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611de19061287a565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e399190612b4f565b9250508190555080600c6000828254611e529190612b4f565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611eb7919061293a565b60405180910390a35050565b828054611ecf90612c24565b90600052602060002090601f016020900481019282611ef15760008555611f38565b82601f10611f0a57805160ff1916838001178555611f38565b82800160010185558215611f38579182015b82811115611f37578251825591602001919060010190611f1c565b5b509050611f459190611fcf565b5090565b828054611f5590612c24565b90600052602060002090601f016020900481019282611f775760008555611fbe565b82601f10611f9057803560ff1916838001178555611fbe565b82800160010185558215611fbe579182015b82811115611fbd578235825591602001919060010190611fa2565b5b509050611fcb9190611fcf565b5090565b5b80821115611fe8576000816000905550600101611fd0565b5090565b6000611fff611ffa84612a26565b612a01565b90508281526020810184848401111561201757600080fd5b612022848285612be2565b509392505050565b60008135905061203981613058565b92915050565b60008135905061204e8161306f565b92915050565b60008083601f84011261206657600080fd5b8235905067ffffffffffffffff81111561207f57600080fd5b60208301915083600182028301111561209757600080fd5b9250929050565b600082601f8301126120af57600080fd5b81356120bf848260208601611fec565b91505092915050565b6000813590506120d781613086565b92915050565b6000602082840312156120ef57600080fd5b60006120fd8482850161202a565b91505092915050565b6000806040838503121561211957600080fd5b60006121278582860161202a565b92505060206121388582860161202a565b9150509250929050565b60008060006060848603121561215757600080fd5b60006121658682870161202a565b93505060206121768682870161202a565b9250506040612187868287016120c8565b9150509250925092565b600080604083850312156121a457600080fd5b60006121b28582860161202a565b92505060206121c3858286016120c8565b9150509250929050565b6000602082840312156121df57600080fd5b60006121ed8482850161203f565b91505092915050565b60008060008060006080868803121561220e57600080fd5b600061221c8882890161203f565b955050602086013567ffffffffffffffff81111561223957600080fd5b61224588828901612054565b94509450506040612258888289016120c8565b925050606086013567ffffffffffffffff81111561227557600080fd5b6122818882890161209e565b9150509295509295909350565b600080604083850312156122a157600080fd5b60006122af8582860161203f565b92505060206122c0858286016120c8565b9150509250929050565b6000806000606084860312156122df57600080fd5b60006122ed8682870161203f565b93505060206122fe868287016120c8565b925050604084013567ffffffffffffffff81111561231b57600080fd5b6123278682870161209e565b9150509250925092565b60006020828403121561234357600080fd5b6000612351848285016120c8565b91505092915050565b60006123668383612634565b60208301905092915050565b61237b81612b83565b82525050565b600061238c82612a67565b6123968185612a95565b93506123a183612a57565b8060005b838110156123d25781516123b9888261235a565b97506123c483612a88565b9250506001810190506123a5565b5085935050505092915050565b6123e881612b95565b82525050565b6123f781612ba1565b82525050565b61240e61240982612ba1565b612cd0565b82525050565b60006124208385612aa6565b935061242d838584612be2565b61243683612da0565b840190509392505050565b600061244c82612a72565b6124568185612aa6565b9350612466818560208601612bf1565b61246f81612da0565b840191505092915050565b600061248582612a7d565b61248f8185612ab7565b935061249f818560208601612bf1565b6124a881612da0565b840191505092915050565b60006124c0602383612ab7565b91506124cb82612db1565b604082019050919050565b60006124e3602283612ab7565b91506124ee82612e00565b604082019050919050565b6000612506601d83612ab7565b915061251182612e4f565b602082019050919050565b6000612529601283612ab7565b915061253482612e78565b602082019050919050565b600061254c602083612ab7565b915061255782612ea1565b602082019050919050565b600061256f602183612ab7565b915061257a82612eca565b604082019050919050565b6000612592602583612ab7565b915061259d82612f19565b604082019050919050565b60006125b5602283612ab7565b91506125c082612f68565b604082019050919050565b60006125d8602483612ab7565b91506125e382612fb7565b604082019050919050565b60006125fb601b83612ab7565b915061260682613006565b602082019050919050565b600061261e601f83612ab7565b91506126298261302f565b602082019050919050565b61263d81612bcb565b82525050565b61264c81612bcb565b82525050565b61266361265e82612bcb565b612cda565b82525050565b61267281612bd5565b82525050565b600061268482856123fd565b6020820191506126948284612652565b6020820191508190509392505050565b60006020820190506126b96000830184612372565b92915050565b60006040820190506126d46000830185612372565b6126e16020830184612643565b9392505050565b600060208201905081810360008301526127028184612381565b905092915050565b600060208201905061271f60008301846123df565b92915050565b600060c08201905061273a600083018a6123ee565b6127476020830189612643565b818103604083015261275a818789612414565b90506127696060830186612643565b818103608083015261277b8185612441565b905061278a60a0830184612372565b98975050505050505050565b600060208201905081810360008301526127b08184612441565b905092915050565b600060208201905081810360008301526127d2818461247a565b905092915050565b600060208201905081810360008301526127f3816124b3565b9050919050565b60006020820190508181036000830152612813816124d6565b9050919050565b60006020820190508181036000830152612833816124f9565b9050919050565b600060208201905081810360008301526128538161251c565b9050919050565b600060208201905081810360008301526128738161253f565b9050919050565b6000602082019050818103600083015261289381612562565b9050919050565b600060208201905081810360008301526128b381612585565b9050919050565b600060208201905081810360008301526128d3816125a8565b9050919050565b600060208201905081810360008301526128f3816125cb565b9050919050565b60006020820190508181036000830152612913816125ee565b9050919050565b6000602082019050818103600083015261293381612611565b9050919050565b600060208201905061294f6000830184612643565b92915050565b600060608201905061296a6000830186612643565b6129776020830185612643565b81810360408301526129898184612441565b9050949350505050565b600060a0820190506129a86000830188612643565b6129b56020830187612643565b6129c26040830186612643565b6129cf6060830185612643565b6129dc6080830184612643565b9695505050505050565b60006020820190506129fb6000830184612669565b92915050565b6000612a0b612a1c565b9050612a178282612c56565b919050565b6000604051905090565b600067ffffffffffffffff821115612a4157612a40612d71565b5b612a4a82612da0565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ad382612bcb565b9150612ade83612bcb565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612b1357612b12612ce4565b5b828201905092915050565b6000612b2982612bcb565b9150612b3483612bcb565b925082612b4457612b43612d13565b5b828204905092915050565b6000612b5a82612bcb565b9150612b6583612bcb565b925082821015612b7857612b77612ce4565b5b828203905092915050565b6000612b8e82612bab565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612c0f578082015181840152602081019050612bf4565b83811115612c1e576000848401525b50505050565b60006002820490506001821680612c3c57607f821691505b60208210811415612c5057612c4f612d42565b5b50919050565b612c5f82612da0565b810181811067ffffffffffffffff82111715612c7e57612c7d612d71565b5b80604052505050565b6000612c9282612bcb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612cc557612cc4612ce4565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e6365206d757374206d617463682074696d657374616d7020696e646578600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61306181612b83565b811461306c57600080fd5b50565b61307881612ba1565b811461308357600080fd5b50565b61308f81612bcb565b811461309a57600080fd5b5056fea2646970667358221220090b234664dbe1c38c0c1d19e1d45e53151e48d7c1e094b69a54bbc66548b7e664736f6c63430008030033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x10 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54656C6C6F72506C617967726F756E6400000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0xD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x5F SWAP3 SWAP2 SWAP1 PUSH3 0x147 JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5452425000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0xE SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0xAD SWAP3 SWAP2 SWAP1 PUSH3 0x147 JUMP JUMPDEST POP PUSH1 0x12 PUSH1 0xF PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP ADDRESS PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0xDF SWAP1 PUSH3 0x21E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x2CE JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0x155 SWAP1 PUSH3 0x240 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0x179 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0x1C5 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0x194 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0x1C5 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0x1C5 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0x1C4 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0x1A7 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0x1D4 SWAP2 SWAP1 PUSH3 0x1D8 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0x1F3 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0x1D9 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x206 PUSH1 0x14 DUP4 PUSH3 0x235 JUMP JUMPDEST SWAP2 POP PUSH3 0x213 DUP3 PUSH3 0x2A5 JUMP JUMPDEST PUSH1 0x14 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x22B DUP3 PUSH3 0x1F7 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH3 0x259 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0x270 JUMPI PUSH3 0x26F PUSH3 0x276 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x5F474F5645524E414E43455F434F4E5452414354000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x30D3 DUP1 PUSH3 0x2DE PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x206 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x77B03E0D GT PUSH2 0x11A JUMPI DUP1 PUSH4 0xC6384071 GT PUSH2 0xAD JUMPI DUP1 PUSH4 0xD9C51CD4 GT PUSH2 0x7C JUMPI DUP1 PUSH4 0xD9C51CD4 EQ PUSH2 0x665 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x681 JUMPI DUP1 PUSH4 0xE07C5486 EQ PUSH2 0x6B1 JUMPI DUP1 PUSH4 0xEF0234AD EQ PUSH2 0x6E1 JUMPI DUP1 PUSH4 0xF25133F3 EQ PUSH2 0x6FD JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xC6384071 EQ PUSH2 0x5CB JUMPI DUP1 PUSH4 0xC979FE9F EQ PUSH2 0x5E9 JUMPI DUP1 PUSH4 0xCB82CC8F EQ PUSH2 0x619 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x635 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xA9059CBB GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x545 JUMPI DUP1 PUSH4 0xB86D1D63 EQ PUSH2 0x575 JUMPI DUP1 PUSH4 0xBED9D861 EQ PUSH2 0x591 JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x59B JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x4BD JUMPI DUP1 PUSH4 0x8929F4C6 EQ PUSH2 0x4ED JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x509 JUMPI DUP1 PUSH4 0x96426D97 EQ PUSH2 0x527 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x19D JUMPI DUP1 PUSH4 0x64473DF2 GT PUSH2 0x16C JUMPI DUP1 PUSH4 0x64473DF2 EQ PUSH2 0x3DB JUMPI DUP1 PUSH4 0x699F200F EQ PUSH2 0x40B JUMPI DUP1 PUSH4 0x69D43BD3 EQ PUSH2 0x43B JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x459 JUMPI DUP1 PUSH4 0x733BDEF0 EQ PUSH2 0x489 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 EQ PUSH2 0x353 JUMPI DUP1 PUSH4 0x5AA6E675 EQ PUSH2 0x371 JUMPI DUP1 PUSH4 0x5EAA9CED EQ PUSH2 0x38F JUMPI DUP1 PUSH4 0x602BF227 EQ PUSH2 0x3AB JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x1F379ACC GT PUSH2 0x1D9 JUMPI DUP1 PUSH4 0x1F379ACC EQ PUSH2 0x2A7 JUMPI DUP1 PUSH4 0x217053C0 EQ PUSH2 0x2C3 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0x248638E5 EQ PUSH2 0x323 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x20B JUMPI DUP1 PUSH4 0x91B50FF EQ PUSH2 0x229 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x259 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x289 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x213 PUSH2 0x72D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x220 SWAP2 SWAP1 PUSH2 0x27B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x243 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23E SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x7BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x250 SWAP2 SWAP1 PUSH2 0x2796 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x273 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x26E SWAP2 SWAP1 PUSH2 0x2191 JUMP JUMPDEST PUSH2 0x86C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x291 PUSH2 0x883 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29E SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BC SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x88D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D8 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x991 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x30D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x308 SWAP2 SWAP1 PUSH2 0x2142 JUMP JUMPDEST PUSH2 0x9D3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x31A SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x33D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x338 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xA7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x34A SWAP2 SWAP1 PUSH2 0x26E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x35B PUSH2 0xAE8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x368 SWAP2 SWAP1 PUSH2 0x29E6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x379 PUSH2 0xAFF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x386 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3A4 SWAP2 SWAP1 PUSH2 0x21F6 JUMP JUMPDEST PUSH2 0xB07 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3C5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3C0 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xD7C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3D2 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3F5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3F0 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0xD94 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x402 SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x425 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x420 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xDC3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x432 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x443 PUSH2 0xDF6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x450 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x473 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x46E SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH2 0xDFC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x480 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4A3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x49E SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH2 0xE45 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4B4 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2993 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4D7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4D2 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xFAF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4E4 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x507 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x502 SWAP2 SWAP1 PUSH2 0x2331 JUMP JUMPDEST PUSH2 0xFCF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x511 PUSH2 0x10D5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x51E SWAP2 SWAP1 PUSH2 0x27B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x52F PUSH2 0x1167 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x53C SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x55F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x55A SWAP2 SWAP1 PUSH2 0x2191 JUMP JUMPDEST PUSH2 0x1173 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x56C SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x58F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x58A SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH2 0x118A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x599 PUSH2 0x11A0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5B5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B0 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x12D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5C2 SWAP2 SWAP1 PUSH2 0x2796 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5D3 PUSH2 0x1389 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5E0 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x603 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5FE SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x138F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x610 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x633 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x62E SWAP2 SWAP1 PUSH2 0x2331 JUMP JUMPDEST PUSH2 0x13C0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x64F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x64A SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x14E4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x65C SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x67F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x67A SWAP2 SWAP1 PUSH2 0x2331 JUMP JUMPDEST PUSH2 0x157E JUMP JUMPDEST STOP JUMPDEST PUSH2 0x69B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x696 SWAP2 SWAP1 PUSH2 0x2106 JUMP JUMPDEST PUSH2 0x1595 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A8 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6CB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6C6 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x161C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6D8 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6FB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6F6 SWAP2 SWAP1 PUSH2 0x22CA JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x717 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x712 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x1795 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x724 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0xD DUP1 SLOAD PUSH2 0x73C SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x768 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7B5 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x78A JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7B5 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x798 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP POP DUP1 SLOAD PUSH2 0x7EB SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x817 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x864 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x839 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x864 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x847 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x879 CALLER DUP5 DUP5 PUSH2 0x17C6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x8D4 SWAP3 SWAP2 SWAP1 PUSH2 0x1EC3 JUMP JUMPDEST POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xB PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x924 SWAP1 PUSH2 0x2C87 JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x940 SWAP3 SWAP2 SWAP1 PUSH2 0x2678 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB SLOAD SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9E0 DUP5 DUP5 DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH2 0xA72 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xA6D SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST PUSH2 0x17C6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0xADC JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0xAC8 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xF PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 ADDRESS SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP DUP3 EQ DUP1 PUSH2 0xB2B JUMPI POP PUSH1 0x0 DUP3 EQ JUMPDEST PUSH2 0xB6A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB61 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 EQ DUP1 PUSH2 0xB83 JUMPI POP PUSH1 0x64 DUP6 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0xBC2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBB9 SWAP1 PUSH2 0x281A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 SWAP1 PUSH2 0xBF5 SWAP3 SWAP2 SWAP1 PUSH2 0x1F49 JUMP JUMPDEST POP PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 TIMESTAMP SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE CALLER PUSH1 0x2 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP TIMESTAMP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0xD2D SWAP1 PUSH2 0x2C87 JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH32 0x48E9E2C732BA278DE6AC88A3A57A5C5BA13D3D8370E709B3B98333A57876CA95 DUP6 TIMESTAMP DUP7 DUP7 DUP7 DUP7 CALLER PUSH1 0x40 MLOAD PUSH2 0xD6D SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2725 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP12 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP2 SWAP4 SWAP6 SWAP1 SWAP3 SWAP5 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x1 ADD SLOAD LT ISZERO PUSH2 0x1059 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1050 SWAP1 PUSH2 0x28FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1076 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1091 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0x3D8D9DF4BD0172DF32E557FA48E96435CD7F2CAC06AAFFACFAEE608E6F7898EF CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x10C9 SWAP3 SWAP2 SWAP1 PUSH2 0x26BF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xE DUP1 SLOAD PUSH2 0x10E4 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1110 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x115D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1132 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x115D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1140 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0x6F05B59D3B20000 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1180 CALLER DUP5 DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x119D DUP2 PUSH9 0x3635C9ADC5DEA00000 PUSH2 0x1B87 JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH3 0x93A80 DUP2 PUSH1 0x0 ADD SLOAD TIMESTAMP PUSH2 0x11F7 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST LT ISZERO PUSH2 0x1238 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x122F SWAP1 PUSH2 0x283A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT PUSH2 0x127F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1276 SWAP1 PUSH2 0x28BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x128E ADDRESS CALLER DUP4 PUSH1 0x2 ADD SLOAD PUSH2 0x1991 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH32 0x4A7934670BD8304E7DA22378BE1368F7C4FEF17C5AEE81804BEDA8638FE428EC CALLER PUSH1 0x40 MLOAD PUSH2 0x12C7 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1303 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x132F SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x137C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1351 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x137C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x135F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x13AB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT ISZERO PUSH2 0x146E JUMPI DUP2 DUP2 PUSH1 0x2 ADD SLOAD LT PUSH2 0x143B JUMPI DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x142F SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x1469 JUMP JUMPDEST PUSH2 0x1455 CALLER ADDRESS DUP4 PUSH1 0x2 ADD SLOAD DUP6 PUSH2 0x1450 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST PUSH2 0x1CD0 JUMP JUMPDEST PUSH2 0x145E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP JUMPDEST PUSH2 0x1483 JUMP JUMPDEST PUSH2 0x1479 CALLER ADDRESS DUP5 PUSH2 0x1CD0 JUMP JUMPDEST PUSH2 0x1482 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x14A0 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0xA96C2CCE65119A2170D1711A6E82F18F2006448828483BA7545E595476543647 CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x14D8 SWAP3 SWAP2 SWAP1 PUSH2 0x26BF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP2 EQ DUP1 PUSH2 0x150F JUMPI POP DUP3 DUP2 GT ISZERO JUMPDEST ISZERO PUSH2 0x151E JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1578 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x1569 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD SLOAD SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1589 CALLER ADDRESS DUP4 PUSH2 0x1CD0 JUMP JUMPDEST PUSH2 0x1592 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP4 EQ DUP1 PUSH2 0x1684 JUMPI POP PUSH1 0x64 DUP4 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0x16C3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16BA SWAP1 PUSH2 0x281A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x16CE CALLER ADDRESS DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH2 0x16DB SWAP2 SWAP1 PUSH2 0x2B1E JUMP JUMPDEST SWAP2 POP PUSH2 0x16E7 ADDRESS DUP4 PUSH2 0x1D7A JUMP JUMPDEST DUP2 PUSH1 0xA PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x16F9 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1723 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xD951D408A0F5057DA5C25B826FB5CE403D56542962B6AC6994DBC6D5432FBFF5 DUP5 PUSH1 0x5 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP6 PUSH1 0x40 MLOAD PUSH2 0x1788 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2955 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x17B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1836 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x182D SWAP1 PUSH2 0x28DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x18A6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x189D SWAP1 PUSH2 0x27FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x8 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1984 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1A01 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19F8 SWAP1 PUSH2 0x289A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1A71 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A68 SWAP1 PUSH2 0x27DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1AC0 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1B16 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1B7A SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1BF7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1BEE SWAP1 PUSH2 0x291A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xC PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C09 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C5F SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1CC4 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1CDD DUP5 DUP5 DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH2 0x1D6F DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x1D6A SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST PUSH2 0x17C6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1DEA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1DE1 SWAP1 PUSH2 0x287A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1E39 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0xC PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1E52 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1EB7 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1ECF SWAP1 PUSH2 0x2C24 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1EF1 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1F38 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1F0A JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1F38 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1F38 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1F37 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1F1C JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1F45 SWAP2 SWAP1 PUSH2 0x1FCF JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1F55 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1F77 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1FBE JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1F90 JUMPI DUP1 CALLDATALOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1FBE JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1FBE JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1FBD JUMPI DUP3 CALLDATALOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1FA2 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1FCB SWAP2 SWAP1 PUSH2 0x1FCF JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1FE8 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1FD0 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FFF PUSH2 0x1FFA DUP5 PUSH2 0x2A26 JUMP JUMPDEST PUSH2 0x2A01 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2017 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2022 DUP5 DUP3 DUP6 PUSH2 0x2BE2 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2039 DUP2 PUSH2 0x3058 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x204E DUP2 PUSH2 0x306F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2066 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x207F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x2097 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x20AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x20BF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1FEC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x20D7 DUP2 PUSH2 0x3086 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x20FD DUP5 DUP3 DUP6 ADD PUSH2 0x202A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2119 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2127 DUP6 DUP3 DUP7 ADD PUSH2 0x202A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2138 DUP6 DUP3 DUP7 ADD PUSH2 0x202A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2157 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2165 DUP7 DUP3 DUP8 ADD PUSH2 0x202A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2176 DUP7 DUP3 DUP8 ADD PUSH2 0x202A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2187 DUP7 DUP3 DUP8 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x21A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x21B2 DUP6 DUP3 DUP7 ADD PUSH2 0x202A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x21C3 DUP6 DUP3 DUP7 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x21ED DUP5 DUP3 DUP6 ADD PUSH2 0x203F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x220E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x221C DUP9 DUP3 DUP10 ADD PUSH2 0x203F JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2239 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2245 DUP9 DUP3 DUP10 ADD PUSH2 0x2054 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 PUSH2 0x2258 DUP9 DUP3 DUP10 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2275 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2281 DUP9 DUP3 DUP10 ADD PUSH2 0x209E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x22A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22AF DUP6 DUP3 DUP7 ADD PUSH2 0x203F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22C0 DUP6 DUP3 DUP7 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x22DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22ED DUP7 DUP3 DUP8 ADD PUSH2 0x203F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x22FE DUP7 DUP3 DUP8 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x231B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2327 DUP7 DUP3 DUP8 ADD PUSH2 0x209E JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2343 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2351 DUP5 DUP3 DUP6 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2366 DUP4 DUP4 PUSH2 0x2634 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x237B DUP2 PUSH2 0x2B83 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x238C DUP3 PUSH2 0x2A67 JUMP JUMPDEST PUSH2 0x2396 DUP2 DUP6 PUSH2 0x2A95 JUMP JUMPDEST SWAP4 POP PUSH2 0x23A1 DUP4 PUSH2 0x2A57 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x23D2 JUMPI DUP2 MLOAD PUSH2 0x23B9 DUP9 DUP3 PUSH2 0x235A JUMP JUMPDEST SWAP8 POP PUSH2 0x23C4 DUP4 PUSH2 0x2A88 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x23A5 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x23E8 DUP2 PUSH2 0x2B95 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x23F7 DUP2 PUSH2 0x2BA1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x240E PUSH2 0x2409 DUP3 PUSH2 0x2BA1 JUMP JUMPDEST PUSH2 0x2CD0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2420 DUP4 DUP6 PUSH2 0x2AA6 JUMP JUMPDEST SWAP4 POP PUSH2 0x242D DUP4 DUP6 DUP5 PUSH2 0x2BE2 JUMP JUMPDEST PUSH2 0x2436 DUP4 PUSH2 0x2DA0 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x244C DUP3 PUSH2 0x2A72 JUMP JUMPDEST PUSH2 0x2456 DUP2 DUP6 PUSH2 0x2AA6 JUMP JUMPDEST SWAP4 POP PUSH2 0x2466 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BF1 JUMP JUMPDEST PUSH2 0x246F DUP2 PUSH2 0x2DA0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2485 DUP3 PUSH2 0x2A7D JUMP JUMPDEST PUSH2 0x248F DUP2 DUP6 PUSH2 0x2AB7 JUMP JUMPDEST SWAP4 POP PUSH2 0x249F DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BF1 JUMP JUMPDEST PUSH2 0x24A8 DUP2 PUSH2 0x2DA0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24C0 PUSH1 0x23 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x24CB DUP3 PUSH2 0x2DB1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24E3 PUSH1 0x22 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x24EE DUP3 PUSH2 0x2E00 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2506 PUSH1 0x1D DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2511 DUP3 PUSH2 0x2E4F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2529 PUSH1 0x12 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2534 DUP3 PUSH2 0x2E78 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x254C PUSH1 0x20 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2557 DUP3 PUSH2 0x2EA1 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x256F PUSH1 0x21 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x257A DUP3 PUSH2 0x2ECA JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2592 PUSH1 0x25 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x259D DUP3 PUSH2 0x2F19 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25B5 PUSH1 0x22 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x25C0 DUP3 PUSH2 0x2F68 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25D8 PUSH1 0x24 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x25E3 DUP3 PUSH2 0x2FB7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25FB PUSH1 0x1B DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2606 DUP3 PUSH2 0x3006 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x261E PUSH1 0x1F DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2629 DUP3 PUSH2 0x302F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x263D DUP2 PUSH2 0x2BCB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x264C DUP2 PUSH2 0x2BCB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2663 PUSH2 0x265E DUP3 PUSH2 0x2BCB JUMP JUMPDEST PUSH2 0x2CDA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2672 DUP2 PUSH2 0x2BD5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2684 DUP3 DUP6 PUSH2 0x23FD JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x2694 DUP3 DUP5 PUSH2 0x2652 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x26B9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2372 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x26D4 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2372 JUMP JUMPDEST PUSH2 0x26E1 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2643 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2702 DUP2 DUP5 PUSH2 0x2381 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x271F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x23DF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0x273A PUSH1 0x0 DUP4 ADD DUP11 PUSH2 0x23EE JUMP JUMPDEST PUSH2 0x2747 PUSH1 0x20 DUP4 ADD DUP10 PUSH2 0x2643 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x275A DUP2 DUP8 DUP10 PUSH2 0x2414 JUMP JUMPDEST SWAP1 POP PUSH2 0x2769 PUSH1 0x60 DUP4 ADD DUP7 PUSH2 0x2643 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x277B DUP2 DUP6 PUSH2 0x2441 JUMP JUMPDEST SWAP1 POP PUSH2 0x278A PUSH1 0xA0 DUP4 ADD DUP5 PUSH2 0x2372 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x27B0 DUP2 DUP5 PUSH2 0x2441 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x27D2 DUP2 DUP5 PUSH2 0x247A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x27F3 DUP2 PUSH2 0x24B3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2813 DUP2 PUSH2 0x24D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2833 DUP2 PUSH2 0x24F9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2853 DUP2 PUSH2 0x251C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2873 DUP2 PUSH2 0x253F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2893 DUP2 PUSH2 0x2562 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28B3 DUP2 PUSH2 0x2585 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28D3 DUP2 PUSH2 0x25A8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28F3 DUP2 PUSH2 0x25CB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2913 DUP2 PUSH2 0x25EE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2933 DUP2 PUSH2 0x2611 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x294F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2643 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x296A PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x2977 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2643 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2989 DUP2 DUP5 PUSH2 0x2441 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x29A8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29B5 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29C2 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29CF PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29DC PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2643 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x29FB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2669 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A0B PUSH2 0x2A1C JUMP JUMPDEST SWAP1 POP PUSH2 0x2A17 DUP3 DUP3 PUSH2 0x2C56 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2A41 JUMPI PUSH2 0x2A40 PUSH2 0x2D71 JUMP JUMPDEST JUMPDEST PUSH2 0x2A4A DUP3 PUSH2 0x2DA0 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AD3 DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH2 0x2ADE DUP4 PUSH2 0x2BCB JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2B13 JUMPI PUSH2 0x2B12 PUSH2 0x2CE4 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B29 DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH2 0x2B34 DUP4 PUSH2 0x2BCB JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2B44 JUMPI PUSH2 0x2B43 PUSH2 0x2D13 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B5A DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH2 0x2B65 DUP4 PUSH2 0x2BCB JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2B78 JUMPI PUSH2 0x2B77 PUSH2 0x2CE4 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B8E DUP3 PUSH2 0x2BAB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2C0F JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2BF4 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2C1E JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2C3C JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2C50 JUMPI PUSH2 0x2C4F PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2C5F DUP3 PUSH2 0x2DA0 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2C7E JUMPI PUSH2 0x2C7D PUSH2 0x2D71 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C92 DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2CC5 JUMPI PUSH2 0x2CC4 PUSH2 0x2CE4 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6964206D7573742062652068617368206F662062797465732064617461000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x372064617973206469646E277420706173730000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6E6F6E6365206D757374206D617463682074696D657374616D7020696E646578 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x7265706F72746572206E6F74206C6F636B656420666F72207769746864726177 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616C000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x696E73756666696369656E74207374616B65642062616C616E63650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3061 DUP2 PUSH2 0x2B83 JUMP JUMPDEST DUP2 EQ PUSH2 0x306C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3078 DUP2 PUSH2 0x2BA1 JUMP JUMPDEST DUP2 EQ PUSH2 0x3083 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x308F DUP2 PUSH2 0x2BCB JUMP JUMPDEST DUP2 EQ PUSH2 0x309A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MULMOD SIGNEXTEND 0x23 CHAINID PUSH5 0xDBE1C38C0C SAR NOT 0xE1 0xD4 0x5E MSTORE8 ISZERO 0x1E 0x48 0xD7 0xC1 0xE0 SWAP5 0xB6 SWAP11 SLOAD 0xBB 0xC6 PUSH6 0x48B7E664736F PUSH13 0x63430008030033000000000000 ", + "sourceMap": "57:17195:0:-:0;;;2443:217;;;;;;;;;;2467:26;;;;;;;;;;;;;;;;;:5;:26;;;;;;;;;;;;:::i;:::-;;2503:16;;;;;;;;;;;;;;;;;:7;:16;;;;;;;;;;;;:::i;:::-;;2541:2;2529:9;;:14;;;;;;;;;;;;;;;;;;2648:4;2553:9;:84;2586:40;;;;;;;:::i;:::-;;;;;;;;;;;;;2576:51;;;;;;2553:84;;;;;;;;;;;;:100;;;;;;;;;;;;;;;;;;57:17195;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:402:1:-;;188:85;270:2;265:3;188:85;:::i;:::-;181:92;;282:93;371:3;282:93;:::i;:::-;400:2;395:3;391:12;384:19;;171:238;;;:::o;415:381::-;;622:148;766:3;622:148;:::i;:::-;615:155;;787:3;780:10;;604:192;;;:::o;802:148::-;;941:3;926:18;;916:34;;;;:::o;956:320::-;;1037:1;1031:4;1027:12;1017:22;;1084:1;1078:4;1074:12;1105:18;1095:2;;1161:4;1153:6;1149:17;1139:27;;1095:2;1223;1215:6;1212:14;1192:18;1189:38;1186:2;;;1242:18;;:::i;:::-;1186:2;1007:269;;;;:::o;1282:180::-;1330:77;1327:1;1320:88;1427:4;1424:1;1417:15;1451:4;1448:1;1441:15;1468:170;1608:22;1604:1;1596:6;1592:14;1585:46;1574:64;:::o;57:17195:0:-;;;;;;;" }, "deployedBytecode": { "generatedSources": [ { "ast": { "nodeType": "YulBlock", - "src": "0:31070:1", + "src": "0:30276:1", "statements": [ { "body": { @@ -6988,7 +6958,7 @@ "nodeType": "YulLiteral", "src": "9926:2:1", "type": "", - "value": "23" + "value": "32" } ], "functionName": { @@ -7017,7 +6987,7 @@ } ], "functionName": { - "name": "store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", + "name": "store_literal_in_memory_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722", "nodeType": "YulIdentifier", "src": "9938:88:1" }, @@ -7063,7 +7033,7 @@ } ] }, - "name": "abi_encode_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack", + "name": "abi_encode_t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722_to_t_string_memory_ptr_fromStack", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -8741,39 +8711,39 @@ { "body": { "nodeType": "YulBlock", - "src": "14698:768:1", + "src": "14670:685:1", "statements": [ { "nodeType": "YulAssignment", - "src": "14708:27:1", + "src": "14680:27:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14720:9:1" + "src": "14692:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14731:3:1", + "src": "14703:3:1", "type": "", - "value": "224" + "value": "192" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14716:3:1" + "src": "14688:3:1" }, "nodeType": "YulFunctionCall", - "src": "14716:19:1" + "src": "14688:19:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14708:4:1" + "src": "14680:4:1" } ] }, @@ -8783,19 +8753,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "14789:6:1" + "src": "14761:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14802:9:1" + "src": "14774:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14813:1:1", + "src": "14785:1:1", "type": "", "value": "0" } @@ -8803,22 +8773,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14798:3:1" + "src": "14770:3:1" }, "nodeType": "YulFunctionCall", - "src": "14798:17:1" + "src": "14770:17:1" } ], "functionName": { "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", "nodeType": "YulIdentifier", - "src": "14745:43:1" + "src": "14717:43:1" }, "nodeType": "YulFunctionCall", - "src": "14745:71:1" + "src": "14717:71:1" }, "nodeType": "YulExpressionStatement", - "src": "14745:71:1" + "src": "14717:71:1" }, { "expression": { @@ -8826,19 +8796,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "14870:6:1" + "src": "14842:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14883:9:1" + "src": "14855:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14894:2:1", + "src": "14866:2:1", "type": "", "value": "32" } @@ -8846,22 +8816,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14879:3:1" + "src": "14851:3:1" }, "nodeType": "YulFunctionCall", - "src": "14879:18:1" + "src": "14851:18:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "14826:43:1" + "src": "14798:43:1" }, "nodeType": "YulFunctionCall", - "src": "14826:72:1" + "src": "14798:72:1" }, "nodeType": "YulExpressionStatement", - "src": "14826:72:1" + "src": "14798:72:1" }, { "expression": { @@ -8871,12 +8841,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14919:9:1" + "src": "14891:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14930:2:1", + "src": "14902:2:1", "type": "", "value": "64" } @@ -8884,78 +8854,78 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14915:3:1" + "src": "14887:3:1" }, "nodeType": "YulFunctionCall", - "src": "14915:18:1" + "src": "14887:18:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14939:4:1" + "src": "14911:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14945:9:1" + "src": "14917:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "14935:3:1" + "src": "14907:3:1" }, "nodeType": "YulFunctionCall", - "src": "14935:20:1" + "src": "14907:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14908:6:1" + "src": "14880:6:1" }, "nodeType": "YulFunctionCall", - "src": "14908:48:1" + "src": "14880:48:1" }, "nodeType": "YulExpressionStatement", - "src": "14908:48:1" + "src": "14880:48:1" }, { "nodeType": "YulAssignment", - "src": "14965:94:1", + "src": "14937:94:1", "value": { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "15037:6:1" + "src": "15009:6:1" }, { "name": "value3", "nodeType": "YulIdentifier", - "src": "15045:6:1" + "src": "15017:6:1" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "15054:4:1" + "src": "15026:4:1" } ], "functionName": { "name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "14973:63:1" + "src": "14945:63:1" }, "nodeType": "YulFunctionCall", - "src": "14973:86:1" + "src": "14945:86:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14965:4:1" + "src": "14937:4:1" } ] }, @@ -8965,19 +8935,19 @@ { "name": "value4", "nodeType": "YulIdentifier", - "src": "15113:6:1" + "src": "15085:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15126:9:1" + "src": "15098:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15137:2:1", + "src": "15109:2:1", "type": "", "value": "96" } @@ -8985,42 +8955,37 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15122:3:1" + "src": "15094:3:1" }, "nodeType": "YulFunctionCall", - "src": "15122:18:1" + "src": "15094:18:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "15069:43:1" + "src": "15041:43:1" }, "nodeType": "YulFunctionCall", - "src": "15069:72:1" + "src": "15041:72:1" }, "nodeType": "YulExpressionStatement", - "src": "15069:72:1" + "src": "15041:72:1" }, { "expression": { "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "15195:6:1" - }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15208:9:1" + "src": "15134:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15219:3:1", + "src": "15145:3:1", "type": "", "value": "128" } @@ -9028,111 +8993,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15204:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "15204:19:1" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "15151:43:1" - }, - "nodeType": "YulFunctionCall", - "src": "15151:73:1" - }, - "nodeType": "YulExpressionStatement", - "src": "15151:73:1" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15245:9:1" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15256:3:1", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15241:3:1" + "src": "15130:3:1" }, "nodeType": "YulFunctionCall", - "src": "15241:19:1" + "src": "15130:19:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15266:4:1" + "src": "15155:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15272:9:1" + "src": "15161:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "15262:3:1" + "src": "15151:3:1" }, "nodeType": "YulFunctionCall", - "src": "15262:20:1" + "src": "15151:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15234:6:1" + "src": "15123:6:1" }, "nodeType": "YulFunctionCall", - "src": "15234:49:1" + "src": "15123:49:1" }, "nodeType": "YulExpressionStatement", - "src": "15234:49:1" + "src": "15123:49:1" }, { "nodeType": "YulAssignment", - "src": "15292:84:1", + "src": "15181:84:1", "value": { "arguments": [ { - "name": "value6", + "name": "value5", "nodeType": "YulIdentifier", - "src": "15362:6:1" + "src": "15251:6:1" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "15371:4:1" + "src": "15260:4:1" } ], "functionName": { "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15300:61:1" + "src": "15189:61:1" }, "nodeType": "YulFunctionCall", - "src": "15300:76:1" + "src": "15189:76:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15292:4:1" + "src": "15181:4:1" } ] }, @@ -9140,102 +9067,96 @@ "expression": { "arguments": [ { - "name": "value7", + "name": "value6", "nodeType": "YulIdentifier", - "src": "15430:6:1" + "src": "15319:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15443:9:1" + "src": "15332:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15454:3:1", + "src": "15343:3:1", "type": "", - "value": "192" + "value": "160" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15439:3:1" + "src": "15328:3:1" }, "nodeType": "YulFunctionCall", - "src": "15439:19:1" + "src": "15328:19:1" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "15386:43:1" + "src": "15275:43:1" }, "nodeType": "YulFunctionCall", - "src": "15386:73:1" + "src": "15275:73:1" }, "nodeType": "YulExpressionStatement", - "src": "15386:73:1" + "src": "15275:73:1" } ] }, - "name": "abi_encode_tuple_t_bytes32_t_uint256_t_bytes_calldata_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__to_t_bytes32_t_uint256_t_bytes_memory_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__fromStack_reversed", + "name": "abi_encode_tuple_t_bytes32_t_uint256_t_bytes_calldata_ptr_t_uint256_t_bytes_memory_ptr_t_address__to_t_bytes32_t_uint256_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_address__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "14614:9:1", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "14626:6:1", + "src": "14594:9:1", "type": "" }, { "name": "value6", "nodeType": "YulTypedName", - "src": "14634:6:1", + "src": "14606:6:1", "type": "" }, { "name": "value5", "nodeType": "YulTypedName", - "src": "14642:6:1", + "src": "14614:6:1", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "14650:6:1", + "src": "14622:6:1", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "14658:6:1", + "src": "14630:6:1", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "14666:6:1", + "src": "14638:6:1", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "14674:6:1", + "src": "14646:6:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "14682:6:1", + "src": "14654:6:1", "type": "" } ], @@ -9243,31 +9164,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "14693:4:1", + "src": "14665:4:1", "type": "" } ], - "src": "14386:1080:1" + "src": "14386:969:1" }, { "body": { "nodeType": "YulBlock", - "src": "15588:193:1", + "src": "15477:193:1", "statements": [ { "nodeType": "YulAssignment", - "src": "15598:26:1", + "src": "15487:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15610:9:1" + "src": "15499:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15621:2:1", + "src": "15510:2:1", "type": "", "value": "32" } @@ -9275,16 +9196,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15606:3:1" + "src": "15495:3:1" }, "nodeType": "YulFunctionCall", - "src": "15606:18:1" + "src": "15495:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15598:4:1" + "src": "15487:4:1" } ] }, @@ -9296,12 +9217,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15645:9:1" + "src": "15534:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15656:1:1", + "src": "15545:1:1", "type": "", "value": "0" } @@ -9309,73 +9230,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15641:3:1" + "src": "15530:3:1" }, "nodeType": "YulFunctionCall", - "src": "15641:17:1" + "src": "15530:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15664:4:1" + "src": "15553:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15670:9:1" + "src": "15559:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "15660:3:1" + "src": "15549:3:1" }, "nodeType": "YulFunctionCall", - "src": "15660:20:1" + "src": "15549:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15634:6:1" + "src": "15523:6:1" }, "nodeType": "YulFunctionCall", - "src": "15634:47:1" + "src": "15523:47:1" }, "nodeType": "YulExpressionStatement", - "src": "15634:47:1" + "src": "15523:47:1" }, { "nodeType": "YulAssignment", - "src": "15690:84:1", + "src": "15579:84:1", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "15760:6:1" + "src": "15649:6:1" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "15769:4:1" + "src": "15658:4:1" } ], "functionName": { "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15698:61:1" + "src": "15587:61:1" }, "nodeType": "YulFunctionCall", - "src": "15698:76:1" + "src": "15587:76:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15690:4:1" + "src": "15579:4:1" } ] } @@ -9387,13 +9308,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15560:9:1", + "src": "15449:9:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "15572:6:1", + "src": "15461:6:1", "type": "" } ], @@ -9401,31 +9322,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15583:4:1", + "src": "15472:4:1", "type": "" } ], - "src": "15472:309:1" + "src": "15361:309:1" }, { "body": { "nodeType": "YulBlock", - "src": "15905:195:1", + "src": "15794:195:1", "statements": [ { "nodeType": "YulAssignment", - "src": "15915:26:1", + "src": "15804:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15927:9:1" + "src": "15816:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15938:2:1", + "src": "15827:2:1", "type": "", "value": "32" } @@ -9433,16 +9354,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15923:3:1" + "src": "15812:3:1" }, "nodeType": "YulFunctionCall", - "src": "15923:18:1" + "src": "15812:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15915:4:1" + "src": "15804:4:1" } ] }, @@ -9454,12 +9375,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15962:9:1" + "src": "15851:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15973:1:1", + "src": "15862:1:1", "type": "", "value": "0" } @@ -9467,73 +9388,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15958:3:1" + "src": "15847:3:1" }, "nodeType": "YulFunctionCall", - "src": "15958:17:1" + "src": "15847:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15981:4:1" + "src": "15870:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15987:9:1" + "src": "15876:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "15977:3:1" + "src": "15866:3:1" }, "nodeType": "YulFunctionCall", - "src": "15977:20:1" + "src": "15866:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15951:6:1" + "src": "15840:6:1" }, "nodeType": "YulFunctionCall", - "src": "15951:47:1" + "src": "15840:47:1" }, "nodeType": "YulExpressionStatement", - "src": "15951:47:1" + "src": "15840:47:1" }, { "nodeType": "YulAssignment", - "src": "16007:86:1", + "src": "15896:86:1", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "16079:6:1" + "src": "15968:6:1" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "16088:4:1" + "src": "15977:4:1" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16015:63:1" + "src": "15904:63:1" }, "nodeType": "YulFunctionCall", - "src": "16015:78:1" + "src": "15904:78:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16007:4:1" + "src": "15896:4:1" } ] } @@ -9545,13 +9466,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15877:9:1", + "src": "15766:9:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "15889:6:1", + "src": "15778:6:1", "type": "" } ], @@ -9559,31 +9480,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15900:4:1", + "src": "15789:4:1", "type": "" } ], - "src": "15787:313:1" + "src": "15676:313:1" }, { "body": { "nodeType": "YulBlock", - "src": "16277:248:1", + "src": "16166:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "16287:26:1", + "src": "16176:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16299:9:1" + "src": "16188:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16310:2:1", + "src": "16199:2:1", "type": "", "value": "32" } @@ -9591,16 +9512,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16295:3:1" + "src": "16184:3:1" }, "nodeType": "YulFunctionCall", - "src": "16295:18:1" + "src": "16184:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16287:4:1" + "src": "16176:4:1" } ] }, @@ -9612,12 +9533,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16334:9:1" + "src": "16223:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16345:1:1", + "src": "16234:1:1", "type": "", "value": "0" } @@ -9625,68 +9546,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16330:3:1" + "src": "16219:3:1" }, "nodeType": "YulFunctionCall", - "src": "16330:17:1" + "src": "16219:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16353:4:1" + "src": "16242:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16359:9:1" + "src": "16248:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16349:3:1" + "src": "16238:3:1" }, "nodeType": "YulFunctionCall", - "src": "16349:20:1" + "src": "16238:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16323:6:1" + "src": "16212:6:1" }, "nodeType": "YulFunctionCall", - "src": "16323:47:1" + "src": "16212:47:1" }, "nodeType": "YulExpressionStatement", - "src": "16323:47:1" + "src": "16212:47:1" }, { "nodeType": "YulAssignment", - "src": "16379:139:1", + "src": "16268:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16513:4:1" + "src": "16402:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16387:124:1" + "src": "16276:124:1" }, "nodeType": "YulFunctionCall", - "src": "16387:131:1" + "src": "16276:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16379:4:1" + "src": "16268:4:1" } ] } @@ -9698,7 +9619,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16257:9:1", + "src": "16146:9:1", "type": "" } ], @@ -9706,31 +9627,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16272:4:1", + "src": "16161:4:1", "type": "" } ], - "src": "16106:419:1" + "src": "15995:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "16702:248:1", + "src": "16591:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "16712:26:1", + "src": "16601:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16724:9:1" + "src": "16613:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16735:2:1", + "src": "16624:2:1", "type": "", "value": "32" } @@ -9738,16 +9659,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16720:3:1" + "src": "16609:3:1" }, "nodeType": "YulFunctionCall", - "src": "16720:18:1" + "src": "16609:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16712:4:1" + "src": "16601:4:1" } ] }, @@ -9759,12 +9680,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16759:9:1" + "src": "16648:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16770:1:1", + "src": "16659:1:1", "type": "", "value": "0" } @@ -9772,68 +9693,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16755:3:1" + "src": "16644:3:1" }, "nodeType": "YulFunctionCall", - "src": "16755:17:1" + "src": "16644:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16778:4:1" + "src": "16667:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16784:9:1" + "src": "16673:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16774:3:1" + "src": "16663:3:1" }, "nodeType": "YulFunctionCall", - "src": "16774:20:1" + "src": "16663:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16748:6:1" + "src": "16637:6:1" }, "nodeType": "YulFunctionCall", - "src": "16748:47:1" + "src": "16637:47:1" }, "nodeType": "YulExpressionStatement", - "src": "16748:47:1" + "src": "16637:47:1" }, { "nodeType": "YulAssignment", - "src": "16804:139:1", + "src": "16693:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16938:4:1" + "src": "16827:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16812:124:1" + "src": "16701:124:1" }, "nodeType": "YulFunctionCall", - "src": "16812:131:1" + "src": "16701:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16804:4:1" + "src": "16693:4:1" } ] } @@ -9845,7 +9766,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16682:9:1", + "src": "16571:9:1", "type": "" } ], @@ -9853,31 +9774,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16697:4:1", + "src": "16586:4:1", "type": "" } ], - "src": "16531:419:1" + "src": "16420:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "17127:248:1", + "src": "17016:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "17137:26:1", + "src": "17026:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17149:9:1" + "src": "17038:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17160:2:1", + "src": "17049:2:1", "type": "", "value": "32" } @@ -9885,16 +9806,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17145:3:1" + "src": "17034:3:1" }, "nodeType": "YulFunctionCall", - "src": "17145:18:1" + "src": "17034:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17137:4:1" + "src": "17026:4:1" } ] }, @@ -9906,12 +9827,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17184:9:1" + "src": "17073:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17195:1:1", + "src": "17084:1:1", "type": "", "value": "0" } @@ -9919,68 +9840,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17180:3:1" + "src": "17069:3:1" }, "nodeType": "YulFunctionCall", - "src": "17180:17:1" + "src": "17069:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17203:4:1" + "src": "17092:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17209:9:1" + "src": "17098:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "17199:3:1" + "src": "17088:3:1" }, "nodeType": "YulFunctionCall", - "src": "17199:20:1" + "src": "17088:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17173:6:1" + "src": "17062:6:1" }, "nodeType": "YulFunctionCall", - "src": "17173:47:1" + "src": "17062:47:1" }, "nodeType": "YulExpressionStatement", - "src": "17173:47:1" + "src": "17062:47:1" }, { "nodeType": "YulAssignment", - "src": "17229:139:1", + "src": "17118:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17363:4:1" + "src": "17252:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "17237:124:1" + "src": "17126:124:1" }, "nodeType": "YulFunctionCall", - "src": "17237:131:1" + "src": "17126:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17229:4:1" + "src": "17118:4:1" } ] } @@ -9992,7 +9913,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17107:9:1", + "src": "16996:9:1", "type": "" } ], @@ -10000,31 +9921,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17122:4:1", + "src": "17011:4:1", "type": "" } ], - "src": "16956:419:1" + "src": "16845:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "17552:248:1", + "src": "17441:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "17562:26:1", + "src": "17451:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17574:9:1" + "src": "17463:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17585:2:1", + "src": "17474:2:1", "type": "", "value": "32" } @@ -10032,16 +9953,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17570:3:1" + "src": "17459:3:1" }, "nodeType": "YulFunctionCall", - "src": "17570:18:1" + "src": "17459:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17562:4:1" + "src": "17451:4:1" } ] }, @@ -10053,12 +9974,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17609:9:1" + "src": "17498:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17620:1:1", + "src": "17509:1:1", "type": "", "value": "0" } @@ -10066,68 +9987,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17605:3:1" + "src": "17494:3:1" }, "nodeType": "YulFunctionCall", - "src": "17605:17:1" + "src": "17494:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17628:4:1" + "src": "17517:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17634:9:1" + "src": "17523:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "17624:3:1" + "src": "17513:3:1" }, "nodeType": "YulFunctionCall", - "src": "17624:20:1" + "src": "17513:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17598:6:1" + "src": "17487:6:1" }, "nodeType": "YulFunctionCall", - "src": "17598:47:1" + "src": "17487:47:1" }, "nodeType": "YulExpressionStatement", - "src": "17598:47:1" + "src": "17487:47:1" }, { "nodeType": "YulAssignment", - "src": "17654:139:1", + "src": "17543:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17788:4:1" + "src": "17677:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "17662:124:1" + "src": "17551:124:1" }, "nodeType": "YulFunctionCall", - "src": "17662:131:1" + "src": "17551:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17654:4:1" + "src": "17543:4:1" } ] } @@ -10139,7 +10060,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17532:9:1", + "src": "17421:9:1", "type": "" } ], @@ -10147,31 +10068,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17547:4:1", + "src": "17436:4:1", "type": "" } ], - "src": "17381:419:1" + "src": "17270:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "17977:248:1", + "src": "17866:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "17987:26:1", + "src": "17876:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17999:9:1" + "src": "17888:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18010:2:1", + "src": "17899:2:1", "type": "", "value": "32" } @@ -10179,16 +10100,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17995:3:1" + "src": "17884:3:1" }, "nodeType": "YulFunctionCall", - "src": "17995:18:1" + "src": "17884:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17987:4:1" + "src": "17876:4:1" } ] }, @@ -10200,12 +10121,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18034:9:1" + "src": "17923:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18045:1:1", + "src": "17934:1:1", "type": "", "value": "0" } @@ -10213,80 +10134,80 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18030:3:1" + "src": "17919:3:1" }, "nodeType": "YulFunctionCall", - "src": "18030:17:1" + "src": "17919:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18053:4:1" + "src": "17942:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18059:9:1" + "src": "17948:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "18049:3:1" + "src": "17938:3:1" }, "nodeType": "YulFunctionCall", - "src": "18049:20:1" + "src": "17938:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18023:6:1" + "src": "17912:6:1" }, "nodeType": "YulFunctionCall", - "src": "18023:47:1" + "src": "17912:47:1" }, "nodeType": "YulExpressionStatement", - "src": "18023:47:1" + "src": "17912:47:1" }, { "nodeType": "YulAssignment", - "src": "18079:139:1", + "src": "17968:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18213:4:1" + "src": "18102:4:1" } ], "functionName": { - "name": "abi_encode_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack", + "name": "abi_encode_t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18087:124:1" + "src": "17976:124:1" }, "nodeType": "YulFunctionCall", - "src": "18087:131:1" + "src": "17976:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18079:4:1" + "src": "17968:4:1" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17957:9:1", + "src": "17846:9:1", "type": "" } ], @@ -10294,31 +10215,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17972:4:1", + "src": "17861:4:1", "type": "" } ], - "src": "17806:419:1" + "src": "17695:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "18402:248:1", + "src": "18291:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "18412:26:1", + "src": "18301:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18424:9:1" + "src": "18313:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18435:2:1", + "src": "18324:2:1", "type": "", "value": "32" } @@ -10326,16 +10247,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18420:3:1" + "src": "18309:3:1" }, "nodeType": "YulFunctionCall", - "src": "18420:18:1" + "src": "18309:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18412:4:1" + "src": "18301:4:1" } ] }, @@ -10347,12 +10268,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18459:9:1" + "src": "18348:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18470:1:1", + "src": "18359:1:1", "type": "", "value": "0" } @@ -10360,68 +10281,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18455:3:1" + "src": "18344:3:1" }, "nodeType": "YulFunctionCall", - "src": "18455:17:1" + "src": "18344:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18478:4:1" + "src": "18367:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18484:9:1" + "src": "18373:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "18474:3:1" + "src": "18363:3:1" }, "nodeType": "YulFunctionCall", - "src": "18474:20:1" + "src": "18363:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18448:6:1" + "src": "18337:6:1" }, "nodeType": "YulFunctionCall", - "src": "18448:47:1" + "src": "18337:47:1" }, "nodeType": "YulExpressionStatement", - "src": "18448:47:1" + "src": "18337:47:1" }, { "nodeType": "YulAssignment", - "src": "18504:139:1", + "src": "18393:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18638:4:1" + "src": "18527:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18512:124:1" + "src": "18401:124:1" }, "nodeType": "YulFunctionCall", - "src": "18512:131:1" + "src": "18401:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18504:4:1" + "src": "18393:4:1" } ] } @@ -10433,7 +10354,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "18382:9:1", + "src": "18271:9:1", "type": "" } ], @@ -10441,31 +10362,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "18397:4:1", + "src": "18286:4:1", "type": "" } ], - "src": "18231:419:1" + "src": "18120:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "18827:248:1", + "src": "18716:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "18837:26:1", + "src": "18726:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18849:9:1" + "src": "18738:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18860:2:1", + "src": "18749:2:1", "type": "", "value": "32" } @@ -10473,16 +10394,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18845:3:1" + "src": "18734:3:1" }, "nodeType": "YulFunctionCall", - "src": "18845:18:1" + "src": "18734:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18837:4:1" + "src": "18726:4:1" } ] }, @@ -10494,12 +10415,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18884:9:1" + "src": "18773:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18895:1:1", + "src": "18784:1:1", "type": "", "value": "0" } @@ -10507,68 +10428,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18880:3:1" + "src": "18769:3:1" }, "nodeType": "YulFunctionCall", - "src": "18880:17:1" + "src": "18769:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18903:4:1" + "src": "18792:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18909:9:1" + "src": "18798:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "18899:3:1" + "src": "18788:3:1" }, "nodeType": "YulFunctionCall", - "src": "18899:20:1" + "src": "18788:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18873:6:1" + "src": "18762:6:1" }, "nodeType": "YulFunctionCall", - "src": "18873:47:1" + "src": "18762:47:1" }, "nodeType": "YulExpressionStatement", - "src": "18873:47:1" + "src": "18762:47:1" }, { "nodeType": "YulAssignment", - "src": "18929:139:1", + "src": "18818:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19063:4:1" + "src": "18952:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18937:124:1" + "src": "18826:124:1" }, "nodeType": "YulFunctionCall", - "src": "18937:131:1" + "src": "18826:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18929:4:1" + "src": "18818:4:1" } ] } @@ -10580,7 +10501,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "18807:9:1", + "src": "18696:9:1", "type": "" } ], @@ -10588,31 +10509,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "18822:4:1", + "src": "18711:4:1", "type": "" } ], - "src": "18656:419:1" + "src": "18545:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "19252:248:1", + "src": "19141:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "19262:26:1", + "src": "19151:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19274:9:1" + "src": "19163:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19285:2:1", + "src": "19174:2:1", "type": "", "value": "32" } @@ -10620,16 +10541,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19270:3:1" + "src": "19159:3:1" }, "nodeType": "YulFunctionCall", - "src": "19270:18:1" + "src": "19159:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19262:4:1" + "src": "19151:4:1" } ] }, @@ -10641,12 +10562,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19309:9:1" + "src": "19198:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19320:1:1", + "src": "19209:1:1", "type": "", "value": "0" } @@ -10654,68 +10575,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19305:3:1" + "src": "19194:3:1" }, "nodeType": "YulFunctionCall", - "src": "19305:17:1" + "src": "19194:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19328:4:1" + "src": "19217:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19334:9:1" + "src": "19223:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19324:3:1" + "src": "19213:3:1" }, "nodeType": "YulFunctionCall", - "src": "19324:20:1" + "src": "19213:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19298:6:1" + "src": "19187:6:1" }, "nodeType": "YulFunctionCall", - "src": "19298:47:1" + "src": "19187:47:1" }, "nodeType": "YulExpressionStatement", - "src": "19298:47:1" + "src": "19187:47:1" }, { "nodeType": "YulAssignment", - "src": "19354:139:1", + "src": "19243:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19488:4:1" + "src": "19377:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19362:124:1" + "src": "19251:124:1" }, "nodeType": "YulFunctionCall", - "src": "19362:131:1" + "src": "19251:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19354:4:1" + "src": "19243:4:1" } ] } @@ -10727,7 +10648,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19232:9:1", + "src": "19121:9:1", "type": "" } ], @@ -10735,31 +10656,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19247:4:1", + "src": "19136:4:1", "type": "" } ], - "src": "19081:419:1" + "src": "18970:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "19677:248:1", + "src": "19566:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "19687:26:1", + "src": "19576:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19699:9:1" + "src": "19588:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19710:2:1", + "src": "19599:2:1", "type": "", "value": "32" } @@ -10767,16 +10688,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19695:3:1" + "src": "19584:3:1" }, "nodeType": "YulFunctionCall", - "src": "19695:18:1" + "src": "19584:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19687:4:1" + "src": "19576:4:1" } ] }, @@ -10788,12 +10709,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19734:9:1" + "src": "19623:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19745:1:1", + "src": "19634:1:1", "type": "", "value": "0" } @@ -10801,68 +10722,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19730:3:1" + "src": "19619:3:1" }, "nodeType": "YulFunctionCall", - "src": "19730:17:1" + "src": "19619:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19753:4:1" + "src": "19642:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19759:9:1" + "src": "19648:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19749:3:1" + "src": "19638:3:1" }, "nodeType": "YulFunctionCall", - "src": "19749:20:1" + "src": "19638:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19723:6:1" + "src": "19612:6:1" }, "nodeType": "YulFunctionCall", - "src": "19723:47:1" + "src": "19612:47:1" }, "nodeType": "YulExpressionStatement", - "src": "19723:47:1" + "src": "19612:47:1" }, { "nodeType": "YulAssignment", - "src": "19779:139:1", + "src": "19668:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19913:4:1" + "src": "19802:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19787:124:1" + "src": "19676:124:1" }, "nodeType": "YulFunctionCall", - "src": "19787:131:1" + "src": "19676:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19779:4:1" + "src": "19668:4:1" } ] } @@ -10874,7 +10795,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19657:9:1", + "src": "19546:9:1", "type": "" } ], @@ -10882,31 +10803,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19672:4:1", + "src": "19561:4:1", "type": "" } ], - "src": "19506:419:1" + "src": "19395:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "20102:248:1", + "src": "19991:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "20112:26:1", + "src": "20001:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20124:9:1" + "src": "20013:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20135:2:1", + "src": "20024:2:1", "type": "", "value": "32" } @@ -10914,16 +10835,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20120:3:1" + "src": "20009:3:1" }, "nodeType": "YulFunctionCall", - "src": "20120:18:1" + "src": "20009:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20112:4:1" + "src": "20001:4:1" } ] }, @@ -10935,12 +10856,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20159:9:1" + "src": "20048:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20170:1:1", + "src": "20059:1:1", "type": "", "value": "0" } @@ -10948,68 +10869,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20155:3:1" + "src": "20044:3:1" }, "nodeType": "YulFunctionCall", - "src": "20155:17:1" + "src": "20044:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20178:4:1" + "src": "20067:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20184:9:1" + "src": "20073:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "20174:3:1" + "src": "20063:3:1" }, "nodeType": "YulFunctionCall", - "src": "20174:20:1" + "src": "20063:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20148:6:1" + "src": "20037:6:1" }, "nodeType": "YulFunctionCall", - "src": "20148:47:1" + "src": "20037:47:1" }, "nodeType": "YulExpressionStatement", - "src": "20148:47:1" + "src": "20037:47:1" }, { "nodeType": "YulAssignment", - "src": "20204:139:1", + "src": "20093:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20338:4:1" + "src": "20227:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "20212:124:1" + "src": "20101:124:1" }, "nodeType": "YulFunctionCall", - "src": "20212:131:1" + "src": "20101:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20204:4:1" + "src": "20093:4:1" } ] } @@ -11021,7 +10942,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "20082:9:1", + "src": "19971:9:1", "type": "" } ], @@ -11029,31 +10950,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "20097:4:1", + "src": "19986:4:1", "type": "" } ], - "src": "19931:419:1" + "src": "19820:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "20527:248:1", + "src": "20416:248:1", "statements": [ { "nodeType": "YulAssignment", - "src": "20537:26:1", + "src": "20426:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20549:9:1" + "src": "20438:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20560:2:1", + "src": "20449:2:1", "type": "", "value": "32" } @@ -11061,16 +10982,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20545:3:1" + "src": "20434:3:1" }, "nodeType": "YulFunctionCall", - "src": "20545:18:1" + "src": "20434:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20537:4:1" + "src": "20426:4:1" } ] }, @@ -11082,12 +11003,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20584:9:1" + "src": "20473:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20595:1:1", + "src": "20484:1:1", "type": "", "value": "0" } @@ -11095,68 +11016,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20580:3:1" + "src": "20469:3:1" }, "nodeType": "YulFunctionCall", - "src": "20580:17:1" + "src": "20469:17:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20603:4:1" + "src": "20492:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20609:9:1" + "src": "20498:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "20599:3:1" + "src": "20488:3:1" }, "nodeType": "YulFunctionCall", - "src": "20599:20:1" + "src": "20488:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20573:6:1" + "src": "20462:6:1" }, "nodeType": "YulFunctionCall", - "src": "20573:47:1" + "src": "20462:47:1" }, "nodeType": "YulExpressionStatement", - "src": "20573:47:1" + "src": "20462:47:1" }, { "nodeType": "YulAssignment", - "src": "20629:139:1", + "src": "20518:139:1", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20763:4:1" + "src": "20652:4:1" } ], "functionName": { "name": "abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "20637:124:1" + "src": "20526:124:1" }, "nodeType": "YulFunctionCall", - "src": "20637:131:1" + "src": "20526:131:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20629:4:1" + "src": "20518:4:1" } ] } @@ -11168,7 +11089,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "20507:9:1", + "src": "20396:9:1", "type": "" } ], @@ -11176,31 +11097,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "20522:4:1", + "src": "20411:4:1", "type": "" } ], - "src": "20356:419:1" + "src": "20245:419:1" }, { "body": { "nodeType": "YulBlock", - "src": "20879:124:1", + "src": "20768:124:1", "statements": [ { "nodeType": "YulAssignment", - "src": "20889:26:1", + "src": "20778:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20901:9:1" + "src": "20790:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20912:2:1", + "src": "20801:2:1", "type": "", "value": "32" } @@ -11208,16 +11129,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20897:3:1" + "src": "20786:3:1" }, "nodeType": "YulFunctionCall", - "src": "20897:18:1" + "src": "20786:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20889:4:1" + "src": "20778:4:1" } ] }, @@ -11227,19 +11148,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "20969:6:1" + "src": "20858:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "20982:9:1" + "src": "20871:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20993:1:1", + "src": "20882:1:1", "type": "", "value": "0" } @@ -11247,22 +11168,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20978:3:1" + "src": "20867:3:1" }, "nodeType": "YulFunctionCall", - "src": "20978:17:1" + "src": "20867:17:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "20925:43:1" + "src": "20814:43:1" }, "nodeType": "YulFunctionCall", - "src": "20925:71:1" + "src": "20814:71:1" }, "nodeType": "YulExpressionStatement", - "src": "20925:71:1" + "src": "20814:71:1" } ] }, @@ -11272,172 +11193,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "20851:9:1", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "20863:6:1", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20874:4:1", - "type": "" - } - ], - "src": "20781:222:1" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21135:206:1", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21145:26:1", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21157:9:1" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21168:2:1", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21153:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "21153:18:1" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21145:4:1" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21225:6:1" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21238:9:1" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21249:1:1", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21234:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "21234:17:1" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "21181:43:1" - }, - "nodeType": "YulFunctionCall", - "src": "21181:71:1" - }, - "nodeType": "YulExpressionStatement", - "src": "21181:71:1" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "21306:6:1" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21319:9:1" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21330:2:1", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21315:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "21315:18:1" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "21262:43:1" - }, - "nodeType": "YulFunctionCall", - "src": "21262:72:1" - }, - "nodeType": "YulExpressionStatement", - "src": "21262:72:1" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21099:9:1", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "21111:6:1", + "src": "20740:9:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "21119:6:1", + "src": "20752:6:1", "type": "" } ], @@ -11445,31 +11207,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "21130:4:1", + "src": "20763:4:1", "type": "" } ], - "src": "21009:332:1" + "src": "20670:222:1" }, { "body": { "nodeType": "YulBlock", - "src": "21519:357:1", + "src": "21070:357:1", "statements": [ { "nodeType": "YulAssignment", - "src": "21529:26:1", + "src": "21080:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21541:9:1" + "src": "21092:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21552:2:1", + "src": "21103:2:1", "type": "", "value": "96" } @@ -11477,16 +11239,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21537:3:1" + "src": "21088:3:1" }, "nodeType": "YulFunctionCall", - "src": "21537:18:1" + "src": "21088:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "21529:4:1" + "src": "21080:4:1" } ] }, @@ -11496,19 +11258,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "21609:6:1" + "src": "21160:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21622:9:1" + "src": "21173:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21633:1:1", + "src": "21184:1:1", "type": "", "value": "0" } @@ -11516,22 +11278,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21618:3:1" + "src": "21169:3:1" }, "nodeType": "YulFunctionCall", - "src": "21618:17:1" + "src": "21169:17:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "21565:43:1" + "src": "21116:43:1" }, "nodeType": "YulFunctionCall", - "src": "21565:71:1" + "src": "21116:71:1" }, "nodeType": "YulExpressionStatement", - "src": "21565:71:1" + "src": "21116:71:1" }, { "expression": { @@ -11539,19 +11301,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "21690:6:1" + "src": "21241:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21703:9:1" + "src": "21254:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21714:2:1", + "src": "21265:2:1", "type": "", "value": "32" } @@ -11559,22 +11321,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21699:3:1" + "src": "21250:3:1" }, "nodeType": "YulFunctionCall", - "src": "21699:18:1" + "src": "21250:18:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "21646:43:1" + "src": "21197:43:1" }, "nodeType": "YulFunctionCall", - "src": "21646:72:1" + "src": "21197:72:1" }, "nodeType": "YulExpressionStatement", - "src": "21646:72:1" + "src": "21197:72:1" }, { "expression": { @@ -11584,12 +11346,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21739:9:1" + "src": "21290:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21750:2:1", + "src": "21301:2:1", "type": "", "value": "64" } @@ -11597,73 +11359,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21735:3:1" + "src": "21286:3:1" }, "nodeType": "YulFunctionCall", - "src": "21735:18:1" + "src": "21286:18:1" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "21759:4:1" + "src": "21310:4:1" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21765:9:1" + "src": "21316:9:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "21755:3:1" + "src": "21306:3:1" }, "nodeType": "YulFunctionCall", - "src": "21755:20:1" + "src": "21306:20:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21728:6:1" + "src": "21279:6:1" }, "nodeType": "YulFunctionCall", - "src": "21728:48:1" + "src": "21279:48:1" }, "nodeType": "YulExpressionStatement", - "src": "21728:48:1" + "src": "21279:48:1" }, { "nodeType": "YulAssignment", - "src": "21785:84:1", + "src": "21336:84:1", "value": { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "21855:6:1" + "src": "21406:6:1" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "21864:4:1" + "src": "21415:4:1" } ], "functionName": { "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "21793:61:1" + "src": "21344:61:1" }, "nodeType": "YulFunctionCall", - "src": "21793:76:1" + "src": "21344:76:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "21785:4:1" + "src": "21336:4:1" } ] } @@ -11675,25 +11437,25 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "21475:9:1", + "src": "21026:9:1", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "21487:6:1", + "src": "21038:6:1", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "21495:6:1", + "src": "21046:6:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "21503:6:1", + "src": "21054:6:1", "type": "" } ], @@ -11701,31 +11463,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "21514:4:1", + "src": "21065:4:1", "type": "" } ], - "src": "21347:529:1" + "src": "20898:529:1" }, { "body": { "nodeType": "YulBlock", - "src": "22092:454:1", + "src": "21643:454:1", "statements": [ { "nodeType": "YulAssignment", - "src": "22102:27:1", + "src": "21653:27:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22114:9:1" + "src": "21665:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22125:3:1", + "src": "21676:3:1", "type": "", "value": "160" } @@ -11733,16 +11495,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22110:3:1" + "src": "21661:3:1" }, "nodeType": "YulFunctionCall", - "src": "22110:19:1" + "src": "21661:19:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22102:4:1" + "src": "21653:4:1" } ] }, @@ -11752,19 +11514,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "22183:6:1" + "src": "21734:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22196:9:1" + "src": "21747:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22207:1:1", + "src": "21758:1:1", "type": "", "value": "0" } @@ -11772,22 +11534,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22192:3:1" + "src": "21743:3:1" }, "nodeType": "YulFunctionCall", - "src": "22192:17:1" + "src": "21743:17:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "22139:43:1" + "src": "21690:43:1" }, "nodeType": "YulFunctionCall", - "src": "22139:71:1" + "src": "21690:71:1" }, "nodeType": "YulExpressionStatement", - "src": "22139:71:1" + "src": "21690:71:1" }, { "expression": { @@ -11795,19 +11557,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "22264:6:1" + "src": "21815:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22277:9:1" + "src": "21828:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22288:2:1", + "src": "21839:2:1", "type": "", "value": "32" } @@ -11815,22 +11577,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22273:3:1" + "src": "21824:3:1" }, "nodeType": "YulFunctionCall", - "src": "22273:18:1" + "src": "21824:18:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "22220:43:1" + "src": "21771:43:1" }, "nodeType": "YulFunctionCall", - "src": "22220:72:1" + "src": "21771:72:1" }, "nodeType": "YulExpressionStatement", - "src": "22220:72:1" + "src": "21771:72:1" }, { "expression": { @@ -11838,19 +11600,19 @@ { "name": "value2", "nodeType": "YulIdentifier", - "src": "22346:6:1" + "src": "21897:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22359:9:1" + "src": "21910:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22370:2:1", + "src": "21921:2:1", "type": "", "value": "64" } @@ -11858,22 +11620,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22355:3:1" + "src": "21906:3:1" }, "nodeType": "YulFunctionCall", - "src": "22355:18:1" + "src": "21906:18:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "22302:43:1" + "src": "21853:43:1" }, "nodeType": "YulFunctionCall", - "src": "22302:72:1" + "src": "21853:72:1" }, "nodeType": "YulExpressionStatement", - "src": "22302:72:1" + "src": "21853:72:1" }, { "expression": { @@ -11881,19 +11643,19 @@ { "name": "value3", "nodeType": "YulIdentifier", - "src": "22428:6:1" + "src": "21979:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22441:9:1" + "src": "21992:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22452:2:1", + "src": "22003:2:1", "type": "", "value": "96" } @@ -11901,22 +11663,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22437:3:1" + "src": "21988:3:1" }, "nodeType": "YulFunctionCall", - "src": "22437:18:1" + "src": "21988:18:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "22384:43:1" + "src": "21935:43:1" }, "nodeType": "YulFunctionCall", - "src": "22384:72:1" + "src": "21935:72:1" }, "nodeType": "YulExpressionStatement", - "src": "22384:72:1" + "src": "21935:72:1" }, { "expression": { @@ -11924,19 +11686,19 @@ { "name": "value4", "nodeType": "YulIdentifier", - "src": "22510:6:1" + "src": "22061:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22523:9:1" + "src": "22074:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22534:3:1", + "src": "22085:3:1", "type": "", "value": "128" } @@ -11944,22 +11706,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22519:3:1" + "src": "22070:3:1" }, "nodeType": "YulFunctionCall", - "src": "22519:19:1" + "src": "22070:19:1" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "22466:43:1" + "src": "22017:43:1" }, "nodeType": "YulFunctionCall", - "src": "22466:73:1" + "src": "22017:73:1" }, "nodeType": "YulExpressionStatement", - "src": "22466:73:1" + "src": "22017:73:1" } ] }, @@ -11969,37 +11731,37 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "22032:9:1", + "src": "21583:9:1", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "22044:6:1", + "src": "21595:6:1", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "22052:6:1", + "src": "21603:6:1", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "22060:6:1", + "src": "21611:6:1", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "22068:6:1", + "src": "21619:6:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "22076:6:1", + "src": "21627:6:1", "type": "" } ], @@ -12007,31 +11769,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "22087:4:1", + "src": "21638:4:1", "type": "" } ], - "src": "21882:664:1" + "src": "21433:664:1" }, { "body": { "nodeType": "YulBlock", - "src": "22646:120:1", + "src": "22197:120:1", "statements": [ { "nodeType": "YulAssignment", - "src": "22656:26:1", + "src": "22207:26:1", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22668:9:1" + "src": "22219:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22679:2:1", + "src": "22230:2:1", "type": "", "value": "32" } @@ -12039,16 +11801,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22664:3:1" + "src": "22215:3:1" }, "nodeType": "YulFunctionCall", - "src": "22664:18:1" + "src": "22215:18:1" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22656:4:1" + "src": "22207:4:1" } ] }, @@ -12058,19 +11820,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "22732:6:1" + "src": "22283:6:1" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22745:9:1" + "src": "22296:9:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22756:1:1", + "src": "22307:1:1", "type": "", "value": "0" } @@ -12078,22 +11840,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22741:3:1" + "src": "22292:3:1" }, "nodeType": "YulFunctionCall", - "src": "22741:17:1" + "src": "22292:17:1" } ], "functionName": { "name": "abi_encode_t_uint8_to_t_uint8_fromStack", "nodeType": "YulIdentifier", - "src": "22692:39:1" + "src": "22243:39:1" }, "nodeType": "YulFunctionCall", - "src": "22692:67:1" + "src": "22243:67:1" }, "nodeType": "YulExpressionStatement", - "src": "22692:67:1" + "src": "22243:67:1" } ] }, @@ -12103,13 +11865,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "22618:9:1", + "src": "22169:9:1", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "22630:6:1", + "src": "22181:6:1", "type": "" } ], @@ -12117,35 +11879,35 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "22641:4:1", + "src": "22192:4:1", "type": "" } ], - "src": "22552:214:1" + "src": "22103:214:1" }, { "body": { "nodeType": "YulBlock", - "src": "22813:88:1", + "src": "22364:88:1", "statements": [ { "nodeType": "YulAssignment", - "src": "22823:30:1", + "src": "22374:30:1", "value": { "arguments": [], "functionName": { "name": "allocate_unbounded", "nodeType": "YulIdentifier", - "src": "22833:18:1" + "src": "22384:18:1" }, "nodeType": "YulFunctionCall", - "src": "22833:20:1" + "src": "22384:20:1" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "22823:6:1" + "src": "22374:6:1" } ] }, @@ -12155,24 +11917,24 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "22882:6:1" + "src": "22433:6:1" }, { "name": "size", "nodeType": "YulIdentifier", - "src": "22890:4:1" + "src": "22441:4:1" } ], "functionName": { "name": "finalize_allocation", "nodeType": "YulIdentifier", - "src": "22862:19:1" + "src": "22413:19:1" }, "nodeType": "YulFunctionCall", - "src": "22862:33:1" + "src": "22413:33:1" }, "nodeType": "YulExpressionStatement", - "src": "22862:33:1" + "src": "22413:33:1" } ] }, @@ -12182,7 +11944,7 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "22797:4:1", + "src": "22348:4:1", "type": "" } ], @@ -12190,26 +11952,26 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "22806:6:1", + "src": "22357:6:1", "type": "" } ], - "src": "22772:129:1" + "src": "22323:129:1" }, { "body": { "nodeType": "YulBlock", - "src": "22947:35:1", + "src": "22498:35:1", "statements": [ { "nodeType": "YulAssignment", - "src": "22957:19:1", + "src": "22508:19:1", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "22973:2:1", + "src": "22524:2:1", "type": "", "value": "64" } @@ -12217,16 +11979,16 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "22967:5:1" + "src": "22518:5:1" }, "nodeType": "YulFunctionCall", - "src": "22967:9:1" + "src": "22518:9:1" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "22957:6:1" + "src": "22508:6:1" } ] } @@ -12238,21 +12000,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "22940:6:1", + "src": "22491:6:1", "type": "" } ], - "src": "22907:75:1" + "src": "22458:75:1" }, { "body": { "nodeType": "YulBlock", - "src": "23054:241:1", + "src": "22605:241:1", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "23159:22:1", + "src": "22710:22:1", "statements": [ { "expression": { @@ -12260,13 +12022,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "23161:16:1" + "src": "22712:16:1" }, "nodeType": "YulFunctionCall", - "src": "23161:18:1" + "src": "22712:18:1" }, "nodeType": "YulExpressionStatement", - "src": "23161:18:1" + "src": "22712:18:1" } ] }, @@ -12275,12 +12037,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "23131:6:1" + "src": "22682:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23139:18:1", + "src": "22690:18:1", "type": "", "value": "0xffffffffffffffff" } @@ -12288,55 +12050,55 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "23128:2:1" + "src": "22679:2:1" }, "nodeType": "YulFunctionCall", - "src": "23128:30:1" + "src": "22679:30:1" }, "nodeType": "YulIf", - "src": "23125:2:1" + "src": "22676:2:1" }, { "nodeType": "YulAssignment", - "src": "23191:37:1", + "src": "22742:37:1", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "23221:6:1" + "src": "22772:6:1" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "23199:21:1" + "src": "22750:21:1" }, "nodeType": "YulFunctionCall", - "src": "23199:29:1" + "src": "22750:29:1" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "23191:4:1" + "src": "22742:4:1" } ] }, { "nodeType": "YulAssignment", - "src": "23265:23:1", + "src": "22816:23:1", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "23277:4:1" + "src": "22828:4:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23283:4:1", + "src": "22834:4:1", "type": "", "value": "0x20" } @@ -12344,16 +12106,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23273:3:1" + "src": "22824:3:1" }, "nodeType": "YulFunctionCall", - "src": "23273:15:1" + "src": "22824:15:1" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "23265:4:1" + "src": "22816:4:1" } ] } @@ -12365,7 +12127,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "23038:6:1", + "src": "22589:6:1", "type": "" } ], @@ -12373,47 +12135,47 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "23049:4:1", + "src": "22600:4:1", "type": "" } ], - "src": "22988:307:1" + "src": "22539:307:1" }, { "body": { "nodeType": "YulBlock", - "src": "23373:60:1", + "src": "22924:60:1", "statements": [ { "nodeType": "YulAssignment", - "src": "23383:11:1", + "src": "22934:11:1", "value": { "name": "ptr", "nodeType": "YulIdentifier", - "src": "23391:3:1" + "src": "22942:3:1" }, "variableNames": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "23383:4:1" + "src": "22934:4:1" } ] }, { "nodeType": "YulAssignment", - "src": "23404:22:1", + "src": "22955:22:1", "value": { "arguments": [ { "name": "ptr", "nodeType": "YulIdentifier", - "src": "23416:3:1" + "src": "22967:3:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23421:4:1", + "src": "22972:4:1", "type": "", "value": "0x20" } @@ -12421,16 +12183,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23412:3:1" + "src": "22963:3:1" }, "nodeType": "YulFunctionCall", - "src": "23412:14:1" + "src": "22963:14:1" }, "variableNames": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "23404:4:1" + "src": "22955:4:1" } ] } @@ -12442,7 +12204,7 @@ { "name": "ptr", "nodeType": "YulTypedName", - "src": "23360:3:1", + "src": "22911:3:1", "type": "" } ], @@ -12450,41 +12212,41 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "23368:4:1", + "src": "22919:4:1", "type": "" } ], - "src": "23301:132:1" + "src": "22852:132:1" }, { "body": { "nodeType": "YulBlock", - "src": "23513:40:1", + "src": "23064:40:1", "statements": [ { "nodeType": "YulAssignment", - "src": "23524:22:1", + "src": "23075:22:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "23540:5:1" + "src": "23091:5:1" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "23534:5:1" + "src": "23085:5:1" }, "nodeType": "YulFunctionCall", - "src": "23534:12:1" + "src": "23085:12:1" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "23524:6:1" + "src": "23075:6:1" } ] } @@ -12496,7 +12258,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "23496:5:1", + "src": "23047:5:1", "type": "" } ], @@ -12504,41 +12266,41 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "23506:6:1", + "src": "23057:6:1", "type": "" } ], - "src": "23439:114:1" + "src": "22990:114:1" }, { "body": { "nodeType": "YulBlock", - "src": "23617:40:1", + "src": "23168:40:1", "statements": [ { "nodeType": "YulAssignment", - "src": "23628:22:1", + "src": "23179:22:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "23644:5:1" + "src": "23195:5:1" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "23638:5:1" + "src": "23189:5:1" }, "nodeType": "YulFunctionCall", - "src": "23638:12:1" + "src": "23189:12:1" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "23628:6:1" + "src": "23179:6:1" } ] } @@ -12550,7 +12312,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "23600:5:1", + "src": "23151:5:1", "type": "" } ], @@ -12558,41 +12320,41 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "23610:6:1", + "src": "23161:6:1", "type": "" } ], - "src": "23559:98:1" + "src": "23110:98:1" }, { "body": { "nodeType": "YulBlock", - "src": "23722:40:1", + "src": "23273:40:1", "statements": [ { "nodeType": "YulAssignment", - "src": "23733:22:1", + "src": "23284:22:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "23749:5:1" + "src": "23300:5:1" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "23743:5:1" + "src": "23294:5:1" }, "nodeType": "YulFunctionCall", - "src": "23743:12:1" + "src": "23294:12:1" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "23733:6:1" + "src": "23284:6:1" } ] } @@ -12604,7 +12366,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "23705:5:1", + "src": "23256:5:1", "type": "" } ], @@ -12612,31 +12374,31 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "23715:6:1", + "src": "23266:6:1", "type": "" } ], - "src": "23663:99:1" + "src": "23214:99:1" }, { "body": { "nodeType": "YulBlock", - "src": "23843:38:1", + "src": "23394:38:1", "statements": [ { "nodeType": "YulAssignment", - "src": "23853:22:1", + "src": "23404:22:1", "value": { "arguments": [ { "name": "ptr", "nodeType": "YulIdentifier", - "src": "23865:3:1" + "src": "23416:3:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23870:4:1", + "src": "23421:4:1", "type": "", "value": "0x20" } @@ -12644,16 +12406,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23861:3:1" + "src": "23412:3:1" }, "nodeType": "YulFunctionCall", - "src": "23861:14:1" + "src": "23412:14:1" }, "variableNames": [ { "name": "next", "nodeType": "YulIdentifier", - "src": "23853:4:1" + "src": "23404:4:1" } ] } @@ -12665,7 +12427,7 @@ { "name": "ptr", "nodeType": "YulTypedName", - "src": "23830:3:1", + "src": "23381:3:1", "type": "" } ], @@ -12673,16 +12435,16 @@ { "name": "next", "nodeType": "YulTypedName", - "src": "23838:4:1", + "src": "23389:4:1", "type": "" } ], - "src": "23768:113:1" + "src": "23319:113:1" }, { "body": { "nodeType": "YulBlock", - "src": "23998:73:1", + "src": "23549:73:1", "statements": [ { "expression": { @@ -12690,39 +12452,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24015:3:1" + "src": "23566:3:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "24020:6:1" + "src": "23571:6:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24008:6:1" + "src": "23559:6:1" }, "nodeType": "YulFunctionCall", - "src": "24008:19:1" + "src": "23559:19:1" }, "nodeType": "YulExpressionStatement", - "src": "24008:19:1" + "src": "23559:19:1" }, { "nodeType": "YulAssignment", - "src": "24036:29:1", + "src": "23587:29:1", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24055:3:1" + "src": "23606:3:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24060:4:1", + "src": "23611:4:1", "type": "", "value": "0x20" } @@ -12730,16 +12492,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24051:3:1" + "src": "23602:3:1" }, "nodeType": "YulFunctionCall", - "src": "24051:14:1" + "src": "23602:14:1" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "24036:11:1" + "src": "23587:11:1" } ] } @@ -12751,13 +12513,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "23970:3:1", + "src": "23521:3:1", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "23975:6:1", + "src": "23526:6:1", "type": "" } ], @@ -12765,16 +12527,16 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "23986:11:1", + "src": "23537:11:1", "type": "" } ], - "src": "23887:184:1" + "src": "23438:184:1" }, { "body": { "nodeType": "YulBlock", - "src": "24172:73:1", + "src": "23723:73:1", "statements": [ { "expression": { @@ -12782,39 +12544,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24189:3:1" + "src": "23740:3:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "24194:6:1" + "src": "23745:6:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24182:6:1" + "src": "23733:6:1" }, "nodeType": "YulFunctionCall", - "src": "24182:19:1" + "src": "23733:19:1" }, "nodeType": "YulExpressionStatement", - "src": "24182:19:1" + "src": "23733:19:1" }, { "nodeType": "YulAssignment", - "src": "24210:29:1", + "src": "23761:29:1", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24229:3:1" + "src": "23780:3:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24234:4:1", + "src": "23785:4:1", "type": "", "value": "0x20" } @@ -12822,16 +12584,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24225:3:1" + "src": "23776:3:1" }, "nodeType": "YulFunctionCall", - "src": "24225:14:1" + "src": "23776:14:1" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "24210:11:1" + "src": "23761:11:1" } ] } @@ -12843,13 +12605,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "24144:3:1", + "src": "23695:3:1", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "24149:6:1", + "src": "23700:6:1", "type": "" } ], @@ -12857,16 +12619,16 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "24160:11:1", + "src": "23711:11:1", "type": "" } ], - "src": "24077:168:1" + "src": "23628:168:1" }, { "body": { "nodeType": "YulBlock", - "src": "24347:73:1", + "src": "23898:73:1", "statements": [ { "expression": { @@ -12874,39 +12636,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24364:3:1" + "src": "23915:3:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "24369:6:1" + "src": "23920:6:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24357:6:1" + "src": "23908:6:1" }, "nodeType": "YulFunctionCall", - "src": "24357:19:1" + "src": "23908:19:1" }, "nodeType": "YulExpressionStatement", - "src": "24357:19:1" + "src": "23908:19:1" }, { "nodeType": "YulAssignment", - "src": "24385:29:1", + "src": "23936:29:1", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24404:3:1" + "src": "23955:3:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24409:4:1", + "src": "23960:4:1", "type": "", "value": "0x20" } @@ -12914,16 +12676,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24400:3:1" + "src": "23951:3:1" }, "nodeType": "YulFunctionCall", - "src": "24400:14:1" + "src": "23951:14:1" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "24385:11:1" + "src": "23936:11:1" } ] } @@ -12935,13 +12697,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "24319:3:1", + "src": "23870:3:1", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "24324:6:1", + "src": "23875:6:1", "type": "" } ], @@ -12949,75 +12711,75 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "24335:11:1", + "src": "23886:11:1", "type": "" } ], - "src": "24251:169:1" + "src": "23802:169:1" }, { "body": { "nodeType": "YulBlock", - "src": "24470:261:1", + "src": "24021:261:1", "statements": [ { "nodeType": "YulAssignment", - "src": "24480:25:1", + "src": "24031:25:1", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24503:1:1" + "src": "24054:1:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24485:17:1" + "src": "24036:17:1" }, "nodeType": "YulFunctionCall", - "src": "24485:20:1" + "src": "24036:20:1" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24480:1:1" + "src": "24031:1:1" } ] }, { "nodeType": "YulAssignment", - "src": "24514:25:1", + "src": "24065:25:1", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24537:1:1" + "src": "24088:1:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24519:17:1" + "src": "24070:17:1" }, "nodeType": "YulFunctionCall", - "src": "24519:20:1" + "src": "24070:20:1" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24514:1:1" + "src": "24065:1:1" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24677:22:1", + "src": "24228:22:1", "statements": [ { "expression": { @@ -13025,13 +12787,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "24679:16:1" + "src": "24230:16:1" }, "nodeType": "YulFunctionCall", - "src": "24679:18:1" + "src": "24230:18:1" }, "nodeType": "YulExpressionStatement", - "src": "24679:18:1" + "src": "24230:18:1" } ] }, @@ -13040,72 +12802,72 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "24598:1:1" + "src": "24149:1:1" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "24605:66:1", + "src": "24156:66:1", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24673:1:1" + "src": "24224:1:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24601:3:1" + "src": "24152:3:1" }, "nodeType": "YulFunctionCall", - "src": "24601:74:1" + "src": "24152:74:1" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "24595:2:1" + "src": "24146:2:1" }, "nodeType": "YulFunctionCall", - "src": "24595:81:1" + "src": "24146:81:1" }, "nodeType": "YulIf", - "src": "24592:2:1" + "src": "24143:2:1" }, { "nodeType": "YulAssignment", - "src": "24709:16:1", + "src": "24260:16:1", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24720:1:1" + "src": "24271:1:1" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24723:1:1" + "src": "24274:1:1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24716:3:1" + "src": "24267:3:1" }, "nodeType": "YulFunctionCall", - "src": "24716:9:1" + "src": "24267:9:1" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "24709:3:1" + "src": "24260:3:1" } ] } @@ -13117,13 +12879,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "24457:1:1", + "src": "24008:1:1", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "24460:1:1", + "src": "24011:1:1", "type": "" } ], @@ -13131,75 +12893,75 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "24466:3:1", + "src": "24017:3:1", "type": "" } ], - "src": "24426:305:1" + "src": "23977:305:1" }, { "body": { "nodeType": "YulBlock", - "src": "24779:143:1", + "src": "24330:143:1", "statements": [ { "nodeType": "YulAssignment", - "src": "24789:25:1", + "src": "24340:25:1", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24812:1:1" + "src": "24363:1:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24794:17:1" + "src": "24345:17:1" }, "nodeType": "YulFunctionCall", - "src": "24794:20:1" + "src": "24345:20:1" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24789:1:1" + "src": "24340:1:1" } ] }, { "nodeType": "YulAssignment", - "src": "24823:25:1", + "src": "24374:25:1", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24846:1:1" + "src": "24397:1:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24828:17:1" + "src": "24379:17:1" }, "nodeType": "YulFunctionCall", - "src": "24828:20:1" + "src": "24379:20:1" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24823:1:1" + "src": "24374:1:1" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24870:22:1", + "src": "24421:22:1", "statements": [ { "expression": { @@ -13207,13 +12969,13 @@ "functionName": { "name": "panic_error_0x12", "nodeType": "YulIdentifier", - "src": "24872:16:1" + "src": "24423:16:1" }, "nodeType": "YulFunctionCall", - "src": "24872:18:1" + "src": "24423:18:1" }, "nodeType": "YulExpressionStatement", - "src": "24872:18:1" + "src": "24423:18:1" } ] }, @@ -13222,49 +12984,49 @@ { "name": "y", "nodeType": "YulIdentifier", - "src": "24867:1:1" + "src": "24418:1:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "24860:6:1" + "src": "24411:6:1" }, "nodeType": "YulFunctionCall", - "src": "24860:9:1" + "src": "24411:9:1" }, "nodeType": "YulIf", - "src": "24857:2:1" + "src": "24408:2:1" }, { "nodeType": "YulAssignment", - "src": "24902:14:1", + "src": "24453:14:1", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24911:1:1" + "src": "24462:1:1" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24914:1:1" + "src": "24465:1:1" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "24907:3:1" + "src": "24458:3:1" }, "nodeType": "YulFunctionCall", - "src": "24907:9:1" + "src": "24458:9:1" }, "variableNames": [ { "name": "r", "nodeType": "YulIdentifier", - "src": "24902:1:1" + "src": "24453:1:1" } ] } @@ -13276,13 +13038,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "24768:1:1", + "src": "24319:1:1", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "24771:1:1", + "src": "24322:1:1", "type": "" } ], @@ -13290,75 +13052,75 @@ { "name": "r", "nodeType": "YulTypedName", - "src": "24777:1:1", + "src": "24328:1:1", "type": "" } ], - "src": "24737:185:1" + "src": "24288:185:1" }, { "body": { "nodeType": "YulBlock", - "src": "24976:300:1", + "src": "24524:146:1", "statements": [ { "nodeType": "YulAssignment", - "src": "24986:25:1", + "src": "24534:25:1", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "25009:1:1" + "src": "24557:1:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24991:17:1" + "src": "24539:17:1" }, "nodeType": "YulFunctionCall", - "src": "24991:20:1" + "src": "24539:20:1" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24986:1:1" + "src": "24534:1:1" } ] }, { "nodeType": "YulAssignment", - "src": "25020:25:1", + "src": "24568:25:1", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "25043:1:1" + "src": "24591:1:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "25025:17:1" + "src": "24573:17:1" }, "nodeType": "YulFunctionCall", - "src": "25025:20:1" + "src": "24573:20:1" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "25020:1:1" + "src": "24568:1:1" } ] }, { "body": { "nodeType": "YulBlock", - "src": "25218:22:1", + "src": "24615:22:1", "statements": [ { "expression": { @@ -13366,233 +13128,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "25220:16:1" + "src": "24617:16:1" }, "nodeType": "YulFunctionCall", - "src": "25220:18:1" + "src": "24617:18:1" }, "nodeType": "YulExpressionStatement", - "src": "25220:18:1" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25130:1:1" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25123:6:1" - }, - "nodeType": "YulFunctionCall", - "src": "25123:9:1" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25116:6:1" - }, - "nodeType": "YulFunctionCall", - "src": "25116:17:1" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25138:1:1" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25145:66:1", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25213:1:1" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "25141:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "25141:74:1" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "25135:2:1" - }, - "nodeType": "YulFunctionCall", - "src": "25135:81:1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "25112:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "25112:105:1" - }, - "nodeType": "YulIf", - "src": "25109:2:1" - }, - { - "nodeType": "YulAssignment", - "src": "25250:20:1", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25265:1:1" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25268:1:1" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "25261:3:1" - }, - "nodeType": "YulFunctionCall", - "src": "25261:9:1" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "25250:7:1" - } - ] - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "24959:1:1", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "24962:1:1", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "24968:7:1", - "type": "" - } - ], - "src": "24928:348:1" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25327:146:1", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25337:25:1", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25360:1:1" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25342:17:1" - }, - "nodeType": "YulFunctionCall", - "src": "25342:20:1" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25337:1:1" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "25371:25:1", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25394:1:1" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25376:17:1" - }, - "nodeType": "YulFunctionCall", - "src": "25376:20:1" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25371:1:1" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25418:22:1", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "25420:16:1" - }, - "nodeType": "YulFunctionCall", - "src": "25420:18:1" - }, - "nodeType": "YulExpressionStatement", - "src": "25420:18:1" + "src": "24617:18:1" } ] }, @@ -13601,54 +13143,54 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "25412:1:1" + "src": "24609:1:1" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "25415:1:1" + "src": "24612:1:1" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "25409:2:1" + "src": "24606:2:1" }, "nodeType": "YulFunctionCall", - "src": "25409:8:1" + "src": "24606:8:1" }, "nodeType": "YulIf", - "src": "25406:2:1" + "src": "24603:2:1" }, { "nodeType": "YulAssignment", - "src": "25450:17:1", + "src": "24647:17:1", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "25462:1:1" + "src": "24659:1:1" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "25465:1:1" + "src": "24662:1:1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "25458:3:1" + "src": "24655:3:1" }, "nodeType": "YulFunctionCall", - "src": "25458:9:1" + "src": "24655:9:1" }, "variableNames": [ { "name": "diff", "nodeType": "YulIdentifier", - "src": "25450:4:1" + "src": "24647:4:1" } ] } @@ -13660,13 +13202,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "25313:1:1", + "src": "24510:1:1", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "25316:1:1", + "src": "24513:1:1", "type": "" } ], @@ -13674,41 +13216,41 @@ { "name": "diff", "nodeType": "YulTypedName", - "src": "25322:4:1", + "src": "24519:4:1", "type": "" } ], - "src": "25282:191:1" + "src": "24479:191:1" }, { "body": { "nodeType": "YulBlock", - "src": "25524:51:1", + "src": "24721:51:1", "statements": [ { "nodeType": "YulAssignment", - "src": "25534:35:1", + "src": "24731:35:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "25563:5:1" + "src": "24760:5:1" } ], "functionName": { "name": "cleanup_t_uint160", "nodeType": "YulIdentifier", - "src": "25545:17:1" + "src": "24742:17:1" }, "nodeType": "YulFunctionCall", - "src": "25545:24:1" + "src": "24742:24:1" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "25534:7:1" + "src": "24731:7:1" } ] } @@ -13720,7 +13262,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "25506:5:1", + "src": "24703:5:1", "type": "" } ], @@ -13728,20 +13270,20 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "25516:7:1", + "src": "24713:7:1", "type": "" } ], - "src": "25479:96:1" + "src": "24676:96:1" }, { "body": { "nodeType": "YulBlock", - "src": "25623:48:1", + "src": "24820:48:1", "statements": [ { "nodeType": "YulAssignment", - "src": "25633:32:1", + "src": "24830:32:1", "value": { "arguments": [ { @@ -13749,31 +13291,31 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "25658:5:1" + "src": "24855:5:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "25651:6:1" + "src": "24848:6:1" }, "nodeType": "YulFunctionCall", - "src": "25651:13:1" + "src": "24848:13:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "25644:6:1" + "src": "24841:6:1" }, "nodeType": "YulFunctionCall", - "src": "25644:21:1" + "src": "24841:21:1" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "25633:7:1" + "src": "24830:7:1" } ] } @@ -13785,7 +13327,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "25605:5:1", + "src": "24802:5:1", "type": "" } ], @@ -13793,30 +13335,30 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "25615:7:1", + "src": "24812:7:1", "type": "" } ], - "src": "25581:90:1" + "src": "24778:90:1" }, { "body": { "nodeType": "YulBlock", - "src": "25722:32:1", + "src": "24919:32:1", "statements": [ { "nodeType": "YulAssignment", - "src": "25732:16:1", + "src": "24929:16:1", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "25743:5:1" + "src": "24940:5:1" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "25732:7:1" + "src": "24929:7:1" } ] } @@ -13828,7 +13370,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "25704:5:1", + "src": "24901:5:1", "type": "" } ], @@ -13836,31 +13378,31 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "25714:7:1", + "src": "24911:7:1", "type": "" } ], - "src": "25677:77:1" + "src": "24874:77:1" }, { "body": { "nodeType": "YulBlock", - "src": "25805:81:1", + "src": "25002:81:1", "statements": [ { "nodeType": "YulAssignment", - "src": "25815:65:1", + "src": "25012:65:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "25830:5:1" + "src": "25027:5:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25837:42:1", + "src": "25034:42:1", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -13868,16 +13410,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "25826:3:1" + "src": "25023:3:1" }, "nodeType": "YulFunctionCall", - "src": "25826:54:1" + "src": "25023:54:1" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "25815:7:1" + "src": "25012:7:1" } ] } @@ -13889,7 +13431,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "25787:5:1", + "src": "24984:5:1", "type": "" } ], @@ -13897,30 +13439,30 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "25797:7:1", + "src": "24994:7:1", "type": "" } ], - "src": "25760:126:1" + "src": "24957:126:1" }, { "body": { "nodeType": "YulBlock", - "src": "25937:32:1", + "src": "25134:32:1", "statements": [ { "nodeType": "YulAssignment", - "src": "25947:16:1", + "src": "25144:16:1", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "25958:5:1" + "src": "25155:5:1" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "25947:7:1" + "src": "25144:7:1" } ] } @@ -13932,7 +13474,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "25919:5:1", + "src": "25116:5:1", "type": "" } ], @@ -13940,31 +13482,31 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "25929:7:1", + "src": "25126:7:1", "type": "" } ], - "src": "25892:77:1" + "src": "25089:77:1" }, { "body": { "nodeType": "YulBlock", - "src": "26018:43:1", + "src": "25215:43:1", "statements": [ { "nodeType": "YulAssignment", - "src": "26028:27:1", + "src": "25225:27:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "26043:5:1" + "src": "25240:5:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26050:4:1", + "src": "25247:4:1", "type": "", "value": "0xff" } @@ -13972,16 +13514,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "26039:3:1" + "src": "25236:3:1" }, "nodeType": "YulFunctionCall", - "src": "26039:16:1" + "src": "25236:16:1" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "26028:7:1" + "src": "25225:7:1" } ] } @@ -13993,7 +13535,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "26000:5:1", + "src": "25197:5:1", "type": "" } ], @@ -14001,16 +13543,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "26010:7:1", + "src": "25207:7:1", "type": "" } ], - "src": "25975:86:1" + "src": "25172:86:1" }, { "body": { "nodeType": "YulBlock", - "src": "26118:103:1", + "src": "25315:103:1", "statements": [ { "expression": { @@ -14018,29 +13560,29 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "26141:3:1" + "src": "25338:3:1" }, { "name": "src", "nodeType": "YulIdentifier", - "src": "26146:3:1" + "src": "25343:3:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26151:6:1" + "src": "25348:6:1" } ], "functionName": { "name": "calldatacopy", "nodeType": "YulIdentifier", - "src": "26128:12:1" + "src": "25325:12:1" }, "nodeType": "YulFunctionCall", - "src": "26128:30:1" + "src": "25325:30:1" }, "nodeType": "YulExpressionStatement", - "src": "26128:30:1" + "src": "25325:30:1" }, { "expression": { @@ -14050,26 +13592,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "26199:3:1" + "src": "25396:3:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26204:6:1" + "src": "25401:6:1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26195:3:1" + "src": "25392:3:1" }, "nodeType": "YulFunctionCall", - "src": "26195:16:1" + "src": "25392:16:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26213:1:1", + "src": "25410:1:1", "type": "", "value": "0" } @@ -14077,13 +13619,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26188:6:1" + "src": "25385:6:1" }, "nodeType": "YulFunctionCall", - "src": "26188:27:1" + "src": "25385:27:1" }, "nodeType": "YulExpressionStatement", - "src": "26188:27:1" + "src": "25385:27:1" } ] }, @@ -14093,36 +13635,36 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "26100:3:1", + "src": "25297:3:1", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "26105:3:1", + "src": "25302:3:1", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "26110:6:1", + "src": "25307:6:1", "type": "" } ], - "src": "26067:154:1" + "src": "25264:154:1" }, { "body": { "nodeType": "YulBlock", - "src": "26276:258:1", + "src": "25473:258:1", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "26286:10:1", + "src": "25483:10:1", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "26295:1:1", + "src": "25492:1:1", "type": "", "value": "0" }, @@ -14130,7 +13672,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "26290:1:1", + "src": "25487:1:1", "type": "" } ] @@ -14138,7 +13680,7 @@ { "body": { "nodeType": "YulBlock", - "src": "26355:63:1", + "src": "25552:63:1", "statements": [ { "expression": { @@ -14148,21 +13690,21 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "26380:3:1" + "src": "25577:3:1" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "26385:1:1" + "src": "25582:1:1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26376:3:1" + "src": "25573:3:1" }, "nodeType": "YulFunctionCall", - "src": "26376:11:1" + "src": "25573:11:1" }, { "arguments": [ @@ -14171,42 +13713,42 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "26399:3:1" + "src": "25596:3:1" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "26404:1:1" + "src": "25601:1:1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26395:3:1" + "src": "25592:3:1" }, "nodeType": "YulFunctionCall", - "src": "26395:11:1" + "src": "25592:11:1" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "26389:5:1" + "src": "25586:5:1" }, "nodeType": "YulFunctionCall", - "src": "26389:18:1" + "src": "25586:18:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26369:6:1" + "src": "25566:6:1" }, "nodeType": "YulFunctionCall", - "src": "26369:39:1" + "src": "25566:39:1" }, "nodeType": "YulExpressionStatement", - "src": "26369:39:1" + "src": "25566:39:1" } ] }, @@ -14215,41 +13757,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "26316:1:1" + "src": "25513:1:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26319:6:1" + "src": "25516:6:1" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "26313:2:1" + "src": "25510:2:1" }, "nodeType": "YulFunctionCall", - "src": "26313:13:1" + "src": "25510:13:1" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "26327:19:1", + "src": "25524:19:1", "statements": [ { "nodeType": "YulAssignment", - "src": "26329:15:1", + "src": "25526:15:1", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "26338:1:1" + "src": "25535:1:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26341:2:1", + "src": "25538:2:1", "type": "", "value": "32" } @@ -14257,16 +13799,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26334:3:1" + "src": "25531:3:1" }, "nodeType": "YulFunctionCall", - "src": "26334:10:1" + "src": "25531:10:1" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "26329:1:1" + "src": "25526:1:1" } ] } @@ -14274,15 +13816,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "26309:3:1", + "src": "25506:3:1", "statements": [] }, - "src": "26305:113:1" + "src": "25502:113:1" }, { "body": { "nodeType": "YulBlock", - "src": "26452:76:1", + "src": "25649:76:1", "statements": [ { "expression": { @@ -14292,26 +13834,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "26502:3:1" + "src": "25699:3:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26507:6:1" + "src": "25704:6:1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26498:3:1" + "src": "25695:3:1" }, "nodeType": "YulFunctionCall", - "src": "26498:16:1" + "src": "25695:16:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26516:1:1", + "src": "25713:1:1", "type": "", "value": "0" } @@ -14319,13 +13861,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26491:6:1" + "src": "25688:6:1" }, "nodeType": "YulFunctionCall", - "src": "26491:27:1" + "src": "25688:27:1" }, "nodeType": "YulExpressionStatement", - "src": "26491:27:1" + "src": "25688:27:1" } ] }, @@ -14334,24 +13876,24 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "26433:1:1" + "src": "25630:1:1" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26436:6:1" + "src": "25633:6:1" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "26430:2:1" + "src": "25627:2:1" }, "nodeType": "YulFunctionCall", - "src": "26430:13:1" + "src": "25627:13:1" }, "nodeType": "YulIf", - "src": "26427:2:1" + "src": "25624:2:1" } ] }, @@ -14361,43 +13903,43 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "26258:3:1", + "src": "25455:3:1", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "26263:3:1", + "src": "25460:3:1", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "26268:6:1", + "src": "25465:6:1", "type": "" } ], - "src": "26227:307:1" + "src": "25424:307:1" }, { "body": { "nodeType": "YulBlock", - "src": "26591:269:1", + "src": "25788:269:1", "statements": [ { "nodeType": "YulAssignment", - "src": "26601:22:1", + "src": "25798:22:1", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "26615:4:1" + "src": "25812:4:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26621:1:1", + "src": "25818:1:1", "type": "", "value": "2" } @@ -14405,33 +13947,33 @@ "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "26611:3:1" + "src": "25808:3:1" }, "nodeType": "YulFunctionCall", - "src": "26611:12:1" + "src": "25808:12:1" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "26601:6:1" + "src": "25798:6:1" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "26632:38:1", + "src": "25829:38:1", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "26662:4:1" + "src": "25859:4:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26668:1:1", + "src": "25865:1:1", "type": "", "value": "1" } @@ -14439,16 +13981,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "26658:3:1" + "src": "25855:3:1" }, "nodeType": "YulFunctionCall", - "src": "26658:12:1" + "src": "25855:12:1" }, "variables": [ { "name": "outOfPlaceEncoding", "nodeType": "YulTypedName", - "src": "26636:18:1", + "src": "25833:18:1", "type": "" } ] @@ -14456,22 +13998,22 @@ { "body": { "nodeType": "YulBlock", - "src": "26709:51:1", + "src": "25906:51:1", "statements": [ { "nodeType": "YulAssignment", - "src": "26723:27:1", + "src": "25920:27:1", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "26737:6:1" + "src": "25934:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26745:4:1", + "src": "25942:4:1", "type": "", "value": "0x7f" } @@ -14479,16 +14021,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "26733:3:1" + "src": "25930:3:1" }, "nodeType": "YulFunctionCall", - "src": "26733:17:1" + "src": "25930:17:1" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "26723:6:1" + "src": "25920:6:1" } ] } @@ -14499,24 +14041,24 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "26689:18:1" + "src": "25886:18:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "26682:6:1" + "src": "25879:6:1" }, "nodeType": "YulFunctionCall", - "src": "26682:26:1" + "src": "25879:26:1" }, "nodeType": "YulIf", - "src": "26679:2:1" + "src": "25876:2:1" }, { "body": { "nodeType": "YulBlock", - "src": "26812:42:1", + "src": "26009:42:1", "statements": [ { "expression": { @@ -14524,13 +14066,13 @@ "functionName": { "name": "panic_error_0x22", "nodeType": "YulIdentifier", - "src": "26826:16:1" + "src": "26023:16:1" }, "nodeType": "YulFunctionCall", - "src": "26826:18:1" + "src": "26023:18:1" }, "nodeType": "YulExpressionStatement", - "src": "26826:18:1" + "src": "26023:18:1" } ] }, @@ -14539,19 +14081,19 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "26776:18:1" + "src": "25973:18:1" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "26799:6:1" + "src": "25996:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26807:2:1", + "src": "26004:2:1", "type": "", "value": "32" } @@ -14559,22 +14101,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "26796:2:1" + "src": "25993:2:1" }, "nodeType": "YulFunctionCall", - "src": "26796:14:1" + "src": "25993:14:1" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "26773:2:1" + "src": "25970:2:1" }, "nodeType": "YulFunctionCall", - "src": "26773:38:1" + "src": "25970:38:1" }, "nodeType": "YulIf", - "src": "26770:2:1" + "src": "25967:2:1" } ] }, @@ -14584,7 +14126,7 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "26575:4:1", + "src": "25772:4:1", "type": "" } ], @@ -14592,57 +14134,57 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "26584:6:1", + "src": "25781:6:1", "type": "" } ], - "src": "26540:320:1" + "src": "25737:320:1" }, { "body": { "nodeType": "YulBlock", - "src": "26909:238:1", + "src": "26106:238:1", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "26919:58:1", + "src": "26116:58:1", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "26941:6:1" + "src": "26138:6:1" }, { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "26971:4:1" + "src": "26168:4:1" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "26949:21:1" + "src": "26146:21:1" }, "nodeType": "YulFunctionCall", - "src": "26949:27:1" + "src": "26146:27:1" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26937:3:1" + "src": "26134:3:1" }, "nodeType": "YulFunctionCall", - "src": "26937:40:1" + "src": "26134:40:1" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "26923:10:1", + "src": "26120:10:1", "type": "" } ] @@ -14650,7 +14192,7 @@ { "body": { "nodeType": "YulBlock", - "src": "27088:22:1", + "src": "26285:22:1", "statements": [ { "expression": { @@ -14658,13 +14200,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "27090:16:1" + "src": "26287:16:1" }, "nodeType": "YulFunctionCall", - "src": "27090:18:1" + "src": "26287:18:1" }, "nodeType": "YulExpressionStatement", - "src": "27090:18:1" + "src": "26287:18:1" } ] }, @@ -14675,12 +14217,12 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "27031:10:1" + "src": "26228:10:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27043:18:1", + "src": "26240:18:1", "type": "", "value": "0xffffffffffffffff" } @@ -14688,43 +14230,43 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "27028:2:1" + "src": "26225:2:1" }, "nodeType": "YulFunctionCall", - "src": "27028:34:1" + "src": "26225:34:1" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "27067:10:1" + "src": "26264:10:1" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "27079:6:1" + "src": "26276:6:1" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "27064:2:1" + "src": "26261:2:1" }, "nodeType": "YulFunctionCall", - "src": "27064:22:1" + "src": "26261:22:1" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "27025:2:1" + "src": "26222:2:1" }, "nodeType": "YulFunctionCall", - "src": "27025:62:1" + "src": "26222:62:1" }, "nodeType": "YulIf", - "src": "27022:2:1" + "src": "26219:2:1" }, { "expression": { @@ -14732,26 +14274,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27126:2:1", + "src": "26323:2:1", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "27130:10:1" + "src": "26327:10:1" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27119:6:1" + "src": "26316:6:1" }, "nodeType": "YulFunctionCall", - "src": "27119:22:1" + "src": "26316:22:1" }, "nodeType": "YulExpressionStatement", - "src": "27119:22:1" + "src": "26316:22:1" } ] }, @@ -14761,54 +14303,54 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "26895:6:1", + "src": "26092:6:1", "type": "" }, { "name": "size", "nodeType": "YulTypedName", - "src": "26903:4:1", + "src": "26100:4:1", "type": "" } ], - "src": "26866:281:1" + "src": "26063:281:1" }, { "body": { "nodeType": "YulBlock", - "src": "27196:190:1", + "src": "26393:190:1", "statements": [ { "nodeType": "YulAssignment", - "src": "27206:33:1", + "src": "26403:33:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "27233:5:1" + "src": "26430:5:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "27215:17:1" + "src": "26412:17:1" }, "nodeType": "YulFunctionCall", - "src": "27215:24:1" + "src": "26412:24:1" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "27206:5:1" + "src": "26403:5:1" } ] }, { "body": { "nodeType": "YulBlock", - "src": "27329:22:1", + "src": "26526:22:1", "statements": [ { "expression": { @@ -14816,13 +14358,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "27331:16:1" + "src": "26528:16:1" }, "nodeType": "YulFunctionCall", - "src": "27331:18:1" + "src": "26528:18:1" }, "nodeType": "YulExpressionStatement", - "src": "27331:18:1" + "src": "26528:18:1" } ] }, @@ -14831,12 +14373,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "27254:5:1" + "src": "26451:5:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27261:66:1", + "src": "26458:66:1", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" } @@ -14844,28 +14386,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "27251:2:1" + "src": "26448:2:1" }, "nodeType": "YulFunctionCall", - "src": "27251:77:1" + "src": "26448:77:1" }, "nodeType": "YulIf", - "src": "27248:2:1" + "src": "26445:2:1" }, { "nodeType": "YulAssignment", - "src": "27360:20:1", + "src": "26557:20:1", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "27371:5:1" + "src": "26568:5:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27378:1:1", + "src": "26575:1:1", "type": "", "value": "1" } @@ -14873,16 +14415,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27367:3:1" + "src": "26564:3:1" }, "nodeType": "YulFunctionCall", - "src": "27367:13:1" + "src": "26564:13:1" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "27360:3:1" + "src": "26557:3:1" } ] } @@ -14894,7 +14436,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "27182:5:1", + "src": "26379:5:1", "type": "" } ], @@ -14902,30 +14444,30 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "27192:3:1", + "src": "26389:3:1", "type": "" } ], - "src": "27153:233:1" + "src": "26350:233:1" }, { "body": { "nodeType": "YulBlock", - "src": "27439:32:1", + "src": "26636:32:1", "statements": [ { "nodeType": "YulAssignment", - "src": "27449:16:1", + "src": "26646:16:1", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "27460:5:1" + "src": "26657:5:1" }, "variableNames": [ { "name": "aligned", "nodeType": "YulIdentifier", - "src": "27449:7:1" + "src": "26646:7:1" } ] } @@ -14937,7 +14479,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "27421:5:1", + "src": "26618:5:1", "type": "" } ], @@ -14945,30 +14487,30 @@ { "name": "aligned", "nodeType": "YulTypedName", - "src": "27431:7:1", + "src": "26628:7:1", "type": "" } ], - "src": "27392:79:1" + "src": "26589:79:1" }, { "body": { "nodeType": "YulBlock", - "src": "27524:32:1", + "src": "26721:32:1", "statements": [ { "nodeType": "YulAssignment", - "src": "27534:16:1", + "src": "26731:16:1", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "27545:5:1" + "src": "26742:5:1" }, "variableNames": [ { "name": "aligned", "nodeType": "YulIdentifier", - "src": "27534:7:1" + "src": "26731:7:1" } ] } @@ -14980,7 +14522,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "27506:5:1", + "src": "26703:5:1", "type": "" } ], @@ -14988,16 +14530,16 @@ { "name": "aligned", "nodeType": "YulTypedName", - "src": "27516:7:1", + "src": "26713:7:1", "type": "" } ], - "src": "27477:79:1" + "src": "26674:79:1" }, { "body": { "nodeType": "YulBlock", - "src": "27590:152:1", + "src": "26787:152:1", "statements": [ { "expression": { @@ -15005,14 +14547,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27607:1:1", + "src": "26804:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27610:77:1", + "src": "26807:77:1", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -15020,13 +14562,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27600:6:1" + "src": "26797:6:1" }, "nodeType": "YulFunctionCall", - "src": "27600:88:1" + "src": "26797:88:1" }, "nodeType": "YulExpressionStatement", - "src": "27600:88:1" + "src": "26797:88:1" }, { "expression": { @@ -15034,14 +14576,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27704:1:1", + "src": "26901:1:1", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27707:4:1", + "src": "26904:4:1", "type": "", "value": "0x11" } @@ -15049,13 +14591,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27697:6:1" + "src": "26894:6:1" }, "nodeType": "YulFunctionCall", - "src": "27697:15:1" + "src": "26894:15:1" }, "nodeType": "YulExpressionStatement", - "src": "27697:15:1" + "src": "26894:15:1" }, { "expression": { @@ -15063,14 +14605,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27728:1:1", + "src": "26925:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27731:4:1", + "src": "26928:4:1", "type": "", "value": "0x24" } @@ -15078,24 +14620,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "27721:6:1" + "src": "26918:6:1" }, "nodeType": "YulFunctionCall", - "src": "27721:15:1" + "src": "26918:15:1" }, "nodeType": "YulExpressionStatement", - "src": "27721:15:1" + "src": "26918:15:1" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "27562:180:1" + "src": "26759:180:1" }, { "body": { "nodeType": "YulBlock", - "src": "27776:152:1", + "src": "26973:152:1", "statements": [ { "expression": { @@ -15103,14 +14645,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27793:1:1", + "src": "26990:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27796:77:1", + "src": "26993:77:1", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -15118,13 +14660,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27786:6:1" + "src": "26983:6:1" }, "nodeType": "YulFunctionCall", - "src": "27786:88:1" + "src": "26983:88:1" }, "nodeType": "YulExpressionStatement", - "src": "27786:88:1" + "src": "26983:88:1" }, { "expression": { @@ -15132,14 +14674,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27890:1:1", + "src": "27087:1:1", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27893:4:1", + "src": "27090:4:1", "type": "", "value": "0x12" } @@ -15147,13 +14689,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27883:6:1" + "src": "27080:6:1" }, "nodeType": "YulFunctionCall", - "src": "27883:15:1" + "src": "27080:15:1" }, "nodeType": "YulExpressionStatement", - "src": "27883:15:1" + "src": "27080:15:1" }, { "expression": { @@ -15161,14 +14703,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27914:1:1", + "src": "27111:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27917:4:1", + "src": "27114:4:1", "type": "", "value": "0x24" } @@ -15176,24 +14718,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "27907:6:1" + "src": "27104:6:1" }, "nodeType": "YulFunctionCall", - "src": "27907:15:1" + "src": "27104:15:1" }, "nodeType": "YulExpressionStatement", - "src": "27907:15:1" + "src": "27104:15:1" } ] }, "name": "panic_error_0x12", "nodeType": "YulFunctionDefinition", - "src": "27748:180:1" + "src": "26945:180:1" }, { "body": { "nodeType": "YulBlock", - "src": "27962:152:1", + "src": "27159:152:1", "statements": [ { "expression": { @@ -15201,14 +14743,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "27979:1:1", + "src": "27176:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27982:77:1", + "src": "27179:77:1", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -15216,13 +14758,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27972:6:1" + "src": "27169:6:1" }, "nodeType": "YulFunctionCall", - "src": "27972:88:1" + "src": "27169:88:1" }, "nodeType": "YulExpressionStatement", - "src": "27972:88:1" + "src": "27169:88:1" }, { "expression": { @@ -15230,14 +14772,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28076:1:1", + "src": "27273:1:1", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28079:4:1", + "src": "27276:4:1", "type": "", "value": "0x22" } @@ -15245,13 +14787,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28069:6:1" + "src": "27266:6:1" }, "nodeType": "YulFunctionCall", - "src": "28069:15:1" + "src": "27266:15:1" }, "nodeType": "YulExpressionStatement", - "src": "28069:15:1" + "src": "27266:15:1" }, { "expression": { @@ -15259,14 +14801,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28100:1:1", + "src": "27297:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28103:4:1", + "src": "27300:4:1", "type": "", "value": "0x24" } @@ -15274,24 +14816,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "28093:6:1" + "src": "27290:6:1" }, "nodeType": "YulFunctionCall", - "src": "28093:15:1" + "src": "27290:15:1" }, "nodeType": "YulExpressionStatement", - "src": "28093:15:1" + "src": "27290:15:1" } ] }, "name": "panic_error_0x22", "nodeType": "YulFunctionDefinition", - "src": "27934:180:1" + "src": "27131:180:1" }, { "body": { "nodeType": "YulBlock", - "src": "28148:152:1", + "src": "27345:152:1", "statements": [ { "expression": { @@ -15299,14 +14841,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28165:1:1", + "src": "27362:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28168:77:1", + "src": "27365:77:1", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -15314,13 +14856,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28158:6:1" + "src": "27355:6:1" }, "nodeType": "YulFunctionCall", - "src": "28158:88:1" + "src": "27355:88:1" }, "nodeType": "YulExpressionStatement", - "src": "28158:88:1" + "src": "27355:88:1" }, { "expression": { @@ -15328,14 +14870,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28262:1:1", + "src": "27459:1:1", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28265:4:1", + "src": "27462:4:1", "type": "", "value": "0x41" } @@ -15343,13 +14885,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28255:6:1" + "src": "27452:6:1" }, "nodeType": "YulFunctionCall", - "src": "28255:15:1" + "src": "27452:15:1" }, "nodeType": "YulExpressionStatement", - "src": "28255:15:1" + "src": "27452:15:1" }, { "expression": { @@ -15357,14 +14899,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28286:1:1", + "src": "27483:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28289:4:1", + "src": "27486:4:1", "type": "", "value": "0x24" } @@ -15372,28 +14914,28 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "28279:6:1" + "src": "27476:6:1" }, "nodeType": "YulFunctionCall", - "src": "28279:15:1" + "src": "27476:15:1" }, "nodeType": "YulExpressionStatement", - "src": "28279:15:1" + "src": "27476:15:1" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "28120:180:1" + "src": "27317:180:1" }, { "body": { "nodeType": "YulBlock", - "src": "28354:54:1", + "src": "27551:54:1", "statements": [ { "nodeType": "YulAssignment", - "src": "28364:38:1", + "src": "27561:38:1", "value": { "arguments": [ { @@ -15401,12 +14943,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "28382:5:1" + "src": "27579:5:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28389:2:1", + "src": "27586:2:1", "type": "", "value": "31" } @@ -15414,17 +14956,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28378:3:1" + "src": "27575:3:1" }, "nodeType": "YulFunctionCall", - "src": "28378:14:1" + "src": "27575:14:1" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "28398:2:1", + "src": "27595:2:1", "type": "", "value": "31" } @@ -15432,25 +14974,25 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "28394:3:1" + "src": "27591:3:1" }, "nodeType": "YulFunctionCall", - "src": "28394:7:1" + "src": "27591:7:1" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "28374:3:1" + "src": "27571:3:1" }, "nodeType": "YulFunctionCall", - "src": "28374:28:1" + "src": "27571:28:1" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "28364:6:1" + "src": "27561:6:1" } ] } @@ -15462,7 +15004,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "28337:5:1", + "src": "27534:5:1", "type": "" } ], @@ -15470,16 +15012,16 @@ { "name": "result", "nodeType": "YulTypedName", - "src": "28347:6:1", + "src": "27544:6:1", "type": "" } ], - "src": "28306:102:1" + "src": "27503:102:1" }, { "body": { "nodeType": "YulBlock", - "src": "28520:116:1", + "src": "27717:116:1", "statements": [ { "expression": { @@ -15489,12 +15031,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28542:6:1" + "src": "27739:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28550:1:1", + "src": "27747:1:1", "type": "", "value": "0" } @@ -15502,15 +15044,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28538:3:1" + "src": "27735:3:1" }, "nodeType": "YulFunctionCall", - "src": "28538:14:1" + "src": "27735:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "28554:34:1", + "src": "27751:34:1", "type": "", "value": "ERC20: transfer to the zero addr" } @@ -15518,13 +15060,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28531:6:1" + "src": "27728:6:1" }, "nodeType": "YulFunctionCall", - "src": "28531:58:1" + "src": "27728:58:1" }, "nodeType": "YulExpressionStatement", - "src": "28531:58:1" + "src": "27728:58:1" }, { "expression": { @@ -15534,12 +15076,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28610:6:1" + "src": "27807:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28618:2:1", + "src": "27815:2:1", "type": "", "value": "32" } @@ -15547,15 +15089,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28606:3:1" + "src": "27803:3:1" }, "nodeType": "YulFunctionCall", - "src": "28606:15:1" + "src": "27803:15:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "28623:5:1", + "src": "27820:5:1", "type": "", "value": "ess" } @@ -15563,13 +15105,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28599:6:1" + "src": "27796:6:1" }, "nodeType": "YulFunctionCall", - "src": "28599:30:1" + "src": "27796:30:1" }, "nodeType": "YulExpressionStatement", - "src": "28599:30:1" + "src": "27796:30:1" } ] }, @@ -15579,16 +15121,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "28512:6:1", + "src": "27709:6:1", "type": "" } ], - "src": "28414:222:1" + "src": "27611:222:1" }, { "body": { "nodeType": "YulBlock", - "src": "28748:115:1", + "src": "27945:115:1", "statements": [ { "expression": { @@ -15598,12 +15140,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28770:6:1" + "src": "27967:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28778:1:1", + "src": "27975:1:1", "type": "", "value": "0" } @@ -15611,15 +15153,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28766:3:1" + "src": "27963:3:1" }, "nodeType": "YulFunctionCall", - "src": "28766:14:1" + "src": "27963:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "28782:34:1", + "src": "27979:34:1", "type": "", "value": "ERC20: approve to the zero addre" } @@ -15627,13 +15169,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28759:6:1" + "src": "27956:6:1" }, "nodeType": "YulFunctionCall", - "src": "28759:58:1" + "src": "27956:58:1" }, "nodeType": "YulExpressionStatement", - "src": "28759:58:1" + "src": "27956:58:1" }, { "expression": { @@ -15643,12 +15185,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28838:6:1" + "src": "28035:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28846:2:1", + "src": "28043:2:1", "type": "", "value": "32" } @@ -15656,15 +15198,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28834:3:1" + "src": "28031:3:1" }, "nodeType": "YulFunctionCall", - "src": "28834:15:1" + "src": "28031:15:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "28851:4:1", + "src": "28048:4:1", "type": "", "value": "ss" } @@ -15672,13 +15214,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28827:6:1" + "src": "28024:6:1" }, "nodeType": "YulFunctionCall", - "src": "28827:29:1" + "src": "28024:29:1" }, "nodeType": "YulExpressionStatement", - "src": "28827:29:1" + "src": "28024:29:1" } ] }, @@ -15688,16 +15230,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "28740:6:1", + "src": "27937:6:1", "type": "" } ], - "src": "28642:221:1" + "src": "27839:221:1" }, { "body": { "nodeType": "YulBlock", - "src": "28975:73:1", + "src": "28172:73:1", "statements": [ { "expression": { @@ -15707,12 +15249,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28997:6:1" + "src": "28194:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29005:1:1", + "src": "28202:1:1", "type": "", "value": "0" } @@ -15720,15 +15262,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28993:3:1" + "src": "28190:3:1" }, "nodeType": "YulFunctionCall", - "src": "28993:14:1" + "src": "28190:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29009:31:1", + "src": "28206:31:1", "type": "", "value": "id must be hash of bytes data" } @@ -15736,13 +15278,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28986:6:1" + "src": "28183:6:1" }, "nodeType": "YulFunctionCall", - "src": "28986:55:1" + "src": "28183:55:1" }, "nodeType": "YulExpressionStatement", - "src": "28986:55:1" + "src": "28183:55:1" } ] }, @@ -15752,16 +15294,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "28967:6:1", + "src": "28164:6:1", "type": "" } ], - "src": "28869:179:1" + "src": "28066:179:1" }, { "body": { "nodeType": "YulBlock", - "src": "29160:62:1", + "src": "28357:62:1", "statements": [ { "expression": { @@ -15771,12 +15313,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29182:6:1" + "src": "28379:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29190:1:1", + "src": "28387:1:1", "type": "", "value": "0" } @@ -15784,15 +15326,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29178:3:1" + "src": "28375:3:1" }, "nodeType": "YulFunctionCall", - "src": "29178:14:1" + "src": "28375:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29194:20:1", + "src": "28391:20:1", "type": "", "value": "7 days didn't pass" } @@ -15800,13 +15342,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29171:6:1" + "src": "28368:6:1" }, "nodeType": "YulFunctionCall", - "src": "29171:44:1" + "src": "28368:44:1" }, "nodeType": "YulExpressionStatement", - "src": "29171:44:1" + "src": "28368:44:1" } ] }, @@ -15816,16 +15358,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29152:6:1", + "src": "28349:6:1", "type": "" } ], - "src": "29054:168:1" + "src": "28251:168:1" }, { "body": { "nodeType": "YulBlock", - "src": "29334:67:1", + "src": "28531:76:1", "statements": [ { "expression": { @@ -15835,12 +15377,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29356:6:1" + "src": "28553:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29364:1:1", + "src": "28561:1:1", "type": "", "value": "0" } @@ -15848,48 +15390,48 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29352:3:1" + "src": "28549:3:1" }, "nodeType": "YulFunctionCall", - "src": "29352:14:1" + "src": "28549:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29368:25:1", + "src": "28565:34:1", "type": "", - "value": "nonce should be correct" + "value": "nonce must match timestamp index" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29345:6:1" + "src": "28542:6:1" }, "nodeType": "YulFunctionCall", - "src": "29345:49:1" + "src": "28542:58:1" }, "nodeType": "YulExpressionStatement", - "src": "29345:49:1" + "src": "28542:58:1" } ] }, - "name": "store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", + "name": "store_literal_in_memory_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29326:6:1", + "src": "28523:6:1", "type": "" } ], - "src": "29228:173:1" + "src": "28425:182:1" }, { "body": { "nodeType": "YulBlock", - "src": "29513:114:1", + "src": "28719:114:1", "statements": [ { "expression": { @@ -15899,12 +15441,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29535:6:1" + "src": "28741:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29543:1:1", + "src": "28749:1:1", "type": "", "value": "0" } @@ -15912,15 +15454,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29531:3:1" + "src": "28737:3:1" }, "nodeType": "YulFunctionCall", - "src": "29531:14:1" + "src": "28737:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29547:34:1", + "src": "28753:34:1", "type": "", "value": "ERC20: burn from the zero addres" } @@ -15928,13 +15470,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29524:6:1" + "src": "28730:6:1" }, "nodeType": "YulFunctionCall", - "src": "29524:58:1" + "src": "28730:58:1" }, "nodeType": "YulExpressionStatement", - "src": "29524:58:1" + "src": "28730:58:1" }, { "expression": { @@ -15944,12 +15486,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29603:6:1" + "src": "28809:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29611:2:1", + "src": "28817:2:1", "type": "", "value": "32" } @@ -15957,15 +15499,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29599:3:1" + "src": "28805:3:1" }, "nodeType": "YulFunctionCall", - "src": "29599:15:1" + "src": "28805:15:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29616:3:1", + "src": "28822:3:1", "type": "", "value": "s" } @@ -15973,13 +15515,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29592:6:1" + "src": "28798:6:1" }, "nodeType": "YulFunctionCall", - "src": "29592:28:1" + "src": "28798:28:1" }, "nodeType": "YulExpressionStatement", - "src": "29592:28:1" + "src": "28798:28:1" } ] }, @@ -15989,16 +15531,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29505:6:1", + "src": "28711:6:1", "type": "" } ], - "src": "29407:220:1" + "src": "28613:220:1" }, { "body": { "nodeType": "YulBlock", - "src": "29739:118:1", + "src": "28945:118:1", "statements": [ { "expression": { @@ -16008,12 +15550,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29761:6:1" + "src": "28967:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29769:1:1", + "src": "28975:1:1", "type": "", "value": "0" } @@ -16021,15 +15563,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29757:3:1" + "src": "28963:3:1" }, "nodeType": "YulFunctionCall", - "src": "29757:14:1" + "src": "28963:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29773:34:1", + "src": "28979:34:1", "type": "", "value": "ERC20: transfer from the zero ad" } @@ -16037,13 +15579,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29750:6:1" + "src": "28956:6:1" }, "nodeType": "YulFunctionCall", - "src": "29750:58:1" + "src": "28956:58:1" }, "nodeType": "YulExpressionStatement", - "src": "29750:58:1" + "src": "28956:58:1" }, { "expression": { @@ -16053,12 +15595,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29829:6:1" + "src": "29035:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29837:2:1", + "src": "29043:2:1", "type": "", "value": "32" } @@ -16066,15 +15608,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29825:3:1" + "src": "29031:3:1" }, "nodeType": "YulFunctionCall", - "src": "29825:15:1" + "src": "29031:15:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "29842:7:1", + "src": "29048:7:1", "type": "", "value": "dress" } @@ -16082,13 +15624,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29818:6:1" + "src": "29024:6:1" }, "nodeType": "YulFunctionCall", - "src": "29818:32:1" + "src": "29024:32:1" }, "nodeType": "YulExpressionStatement", - "src": "29818:32:1" + "src": "29024:32:1" } ] }, @@ -16098,16 +15640,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29731:6:1", + "src": "28937:6:1", "type": "" } ], - "src": "29633:224:1" + "src": "28839:224:1" }, { "body": { "nodeType": "YulBlock", - "src": "29969:115:1", + "src": "29175:115:1", "statements": [ { "expression": { @@ -16117,12 +15659,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29991:6:1" + "src": "29197:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29999:1:1", + "src": "29205:1:1", "type": "", "value": "0" } @@ -16130,15 +15672,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29987:3:1" + "src": "29193:3:1" }, "nodeType": "YulFunctionCall", - "src": "29987:14:1" + "src": "29193:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "30003:34:1", + "src": "29209:34:1", "type": "", "value": "reporter not locked for withdraw" } @@ -16146,13 +15688,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29980:6:1" + "src": "29186:6:1" }, "nodeType": "YulFunctionCall", - "src": "29980:58:1" + "src": "29186:58:1" }, "nodeType": "YulExpressionStatement", - "src": "29980:58:1" + "src": "29186:58:1" }, { "expression": { @@ -16162,12 +15704,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30059:6:1" + "src": "29265:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30067:2:1", + "src": "29273:2:1", "type": "", "value": "32" } @@ -16175,15 +15717,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30055:3:1" + "src": "29261:3:1" }, "nodeType": "YulFunctionCall", - "src": "30055:15:1" + "src": "29261:15:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "30072:4:1", + "src": "29278:4:1", "type": "", "value": "al" } @@ -16191,13 +15733,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30048:6:1" + "src": "29254:6:1" }, "nodeType": "YulFunctionCall", - "src": "30048:29:1" + "src": "29254:29:1" }, "nodeType": "YulExpressionStatement", - "src": "30048:29:1" + "src": "29254:29:1" } ] }, @@ -16207,16 +15749,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29961:6:1", + "src": "29167:6:1", "type": "" } ], - "src": "29863:221:1" + "src": "29069:221:1" }, { "body": { "nodeType": "YulBlock", - "src": "30196:117:1", + "src": "29402:117:1", "statements": [ { "expression": { @@ -16226,12 +15768,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30218:6:1" + "src": "29424:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30226:1:1", + "src": "29432:1:1", "type": "", "value": "0" } @@ -16239,15 +15781,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30214:3:1" + "src": "29420:3:1" }, "nodeType": "YulFunctionCall", - "src": "30214:14:1" + "src": "29420:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "30230:34:1", + "src": "29436:34:1", "type": "", "value": "ERC20: approve from the zero add" } @@ -16255,13 +15797,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30207:6:1" + "src": "29413:6:1" }, "nodeType": "YulFunctionCall", - "src": "30207:58:1" + "src": "29413:58:1" }, "nodeType": "YulExpressionStatement", - "src": "30207:58:1" + "src": "29413:58:1" }, { "expression": { @@ -16271,12 +15813,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30286:6:1" + "src": "29492:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30294:2:1", + "src": "29500:2:1", "type": "", "value": "32" } @@ -16284,15 +15826,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30282:3:1" + "src": "29488:3:1" }, "nodeType": "YulFunctionCall", - "src": "30282:15:1" + "src": "29488:15:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "30299:6:1", + "src": "29505:6:1", "type": "", "value": "ress" } @@ -16300,13 +15842,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30275:6:1" + "src": "29481:6:1" }, "nodeType": "YulFunctionCall", - "src": "30275:31:1" + "src": "29481:31:1" }, "nodeType": "YulExpressionStatement", - "src": "30275:31:1" + "src": "29481:31:1" } ] }, @@ -16316,16 +15858,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "30188:6:1", + "src": "29394:6:1", "type": "" } ], - "src": "30090:223:1" + "src": "29296:223:1" }, { "body": { "nodeType": "YulBlock", - "src": "30425:71:1", + "src": "29631:71:1", "statements": [ { "expression": { @@ -16335,12 +15877,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30447:6:1" + "src": "29653:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30455:1:1", + "src": "29661:1:1", "type": "", "value": "0" } @@ -16348,15 +15890,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30443:3:1" + "src": "29649:3:1" }, "nodeType": "YulFunctionCall", - "src": "30443:14:1" + "src": "29649:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "30459:29:1", + "src": "29665:29:1", "type": "", "value": "insufficient staked balance" } @@ -16364,13 +15906,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30436:6:1" + "src": "29642:6:1" }, "nodeType": "YulFunctionCall", - "src": "30436:53:1" + "src": "29642:53:1" }, "nodeType": "YulExpressionStatement", - "src": "30436:53:1" + "src": "29642:53:1" } ] }, @@ -16380,16 +15922,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "30417:6:1", + "src": "29623:6:1", "type": "" } ], - "src": "30319:177:1" + "src": "29525:177:1" }, { "body": { "nodeType": "YulBlock", - "src": "30608:75:1", + "src": "29814:75:1", "statements": [ { "expression": { @@ -16399,12 +15941,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30630:6:1" + "src": "29836:6:1" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30638:1:1", + "src": "29844:1:1", "type": "", "value": "0" } @@ -16412,15 +15954,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30626:3:1" + "src": "29832:3:1" }, "nodeType": "YulFunctionCall", - "src": "30626:14:1" + "src": "29832:14:1" }, { "kind": "string", "nodeType": "YulLiteral", - "src": "30642:33:1", + "src": "29848:33:1", "type": "", "value": "ERC20: mint to the zero address" } @@ -16428,13 +15970,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30619:6:1" + "src": "29825:6:1" }, "nodeType": "YulFunctionCall", - "src": "30619:57:1" + "src": "29825:57:1" }, "nodeType": "YulExpressionStatement", - "src": "30619:57:1" + "src": "29825:57:1" } ] }, @@ -16444,21 +15986,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "30600:6:1", + "src": "29806:6:1", "type": "" } ], - "src": "30502:181:1" + "src": "29708:181:1" }, { "body": { "nodeType": "YulBlock", - "src": "30732:79:1", + "src": "29938:79:1", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "30789:16:1", + "src": "29995:16:1", "statements": [ { "expression": { @@ -16466,14 +16008,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "30798:1:1", + "src": "30004:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30801:1:1", + "src": "30007:1:1", "type": "", "value": "0" } @@ -16481,13 +16023,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "30791:6:1" + "src": "29997:6:1" }, "nodeType": "YulFunctionCall", - "src": "30791:12:1" + "src": "29997:12:1" }, "nodeType": "YulExpressionStatement", - "src": "30791:12:1" + "src": "29997:12:1" } ] }, @@ -16498,44 +16040,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30755:5:1" + "src": "29961:5:1" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "30780:5:1" + "src": "29986:5:1" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "30762:17:1" + "src": "29968:17:1" }, "nodeType": "YulFunctionCall", - "src": "30762:24:1" + "src": "29968:24:1" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "30752:2:1" + "src": "29958:2:1" }, "nodeType": "YulFunctionCall", - "src": "30752:35:1" + "src": "29958:35:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "30745:6:1" + "src": "29951:6:1" }, "nodeType": "YulFunctionCall", - "src": "30745:43:1" + "src": "29951:43:1" }, "nodeType": "YulIf", - "src": "30742:2:1" + "src": "29948:2:1" } ] }, @@ -16545,21 +16087,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "30725:5:1", + "src": "29931:5:1", "type": "" } ], - "src": "30689:122:1" + "src": "29895:122:1" }, { "body": { "nodeType": "YulBlock", - "src": "30860:79:1", + "src": "30066:79:1", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "30917:16:1", + "src": "30123:16:1", "statements": [ { "expression": { @@ -16567,14 +16109,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "30926:1:1", + "src": "30132:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30929:1:1", + "src": "30135:1:1", "type": "", "value": "0" } @@ -16582,13 +16124,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "30919:6:1" + "src": "30125:6:1" }, "nodeType": "YulFunctionCall", - "src": "30919:12:1" + "src": "30125:12:1" }, "nodeType": "YulExpressionStatement", - "src": "30919:12:1" + "src": "30125:12:1" } ] }, @@ -16599,44 +16141,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30883:5:1" + "src": "30089:5:1" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "30908:5:1" + "src": "30114:5:1" } ], "functionName": { "name": "cleanup_t_bytes32", "nodeType": "YulIdentifier", - "src": "30890:17:1" + "src": "30096:17:1" }, "nodeType": "YulFunctionCall", - "src": "30890:24:1" + "src": "30096:24:1" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "30880:2:1" + "src": "30086:2:1" }, "nodeType": "YulFunctionCall", - "src": "30880:35:1" + "src": "30086:35:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "30873:6:1" + "src": "30079:6:1" }, "nodeType": "YulFunctionCall", - "src": "30873:43:1" + "src": "30079:43:1" }, "nodeType": "YulIf", - "src": "30870:2:1" + "src": "30076:2:1" } ] }, @@ -16646,21 +16188,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "30853:5:1", + "src": "30059:5:1", "type": "" } ], - "src": "30817:122:1" + "src": "30023:122:1" }, { "body": { "nodeType": "YulBlock", - "src": "30988:79:1", + "src": "30194:79:1", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "31045:16:1", + "src": "30251:16:1", "statements": [ { "expression": { @@ -16668,14 +16210,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "31054:1:1", + "src": "30260:1:1", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31057:1:1", + "src": "30263:1:1", "type": "", "value": "0" } @@ -16683,13 +16225,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "31047:6:1" + "src": "30253:6:1" }, "nodeType": "YulFunctionCall", - "src": "31047:12:1" + "src": "30253:12:1" }, "nodeType": "YulExpressionStatement", - "src": "31047:12:1" + "src": "30253:12:1" } ] }, @@ -16700,44 +16242,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31011:5:1" + "src": "30217:5:1" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "31036:5:1" + "src": "30242:5:1" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "31018:17:1" + "src": "30224:17:1" }, "nodeType": "YulFunctionCall", - "src": "31018:24:1" + "src": "30224:24:1" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "31008:2:1" + "src": "30214:2:1" }, "nodeType": "YulFunctionCall", - "src": "31008:35:1" + "src": "30214:35:1" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "31001:6:1" + "src": "30207:6:1" }, "nodeType": "YulFunctionCall", - "src": "31001:43:1" + "src": "30207:43:1" }, "nodeType": "YulIf", - "src": "30998:2:1" + "src": "30204:2:1" } ] }, @@ -16747,15 +16289,15 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "30981:5:1", + "src": "30187:5:1", "type": "" } ], - "src": "30945:122:1" + "src": "30151:122:1" } ] }, - "contents": "{\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_calldata_to_memory(src, dst, length)\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_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert(0, 0) }\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\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_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes_calldata_ptrt_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value1, value2 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value4 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value2 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 35)\n store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 29)\n store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 18)\n store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256_t_bytes_calldata_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__to_t_bytes32_t_uint256_t_bytes_memory_ptr_t_uint256_t_uint256_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart , value7, value6, value5, value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 224)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value2, value3, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 96))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value5, add(headStart, 128))\n\n mstore(add(headStart, 160), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value6, tail)\n\n abi_encode_t_address_to_t_address_fromStack(value7, add(headStart, 192))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f__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_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029__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_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f__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_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790__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_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494__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_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f__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_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea__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_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774__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_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208__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_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db__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_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e__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_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack( tail)\n\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 abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__to_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 128))\n\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\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 checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: transfer to the zero addr\")\n\n mstore(add(memPtr, 32), \"ess\")\n\n }\n\n function store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: approve to the zero addre\")\n\n mstore(add(memPtr, 32), \"ss\")\n\n }\n\n function store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f(memPtr) {\n\n mstore(add(memPtr, 0), \"id must be hash of bytes data\")\n\n }\n\n function store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790(memPtr) {\n\n mstore(add(memPtr, 0), \"7 days didn't pass\")\n\n }\n\n function store_literal_in_memory_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494(memPtr) {\n\n mstore(add(memPtr, 0), \"nonce should be correct\")\n\n }\n\n function store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: burn from the zero addres\")\n\n mstore(add(memPtr, 32), \"s\")\n\n }\n\n function store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: transfer from the zero ad\")\n\n mstore(add(memPtr, 32), \"dress\")\n\n }\n\n function store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774(memPtr) {\n\n mstore(add(memPtr, 0), \"reporter not locked for withdraw\")\n\n mstore(add(memPtr, 32), \"al\")\n\n }\n\n function store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: approve from the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db(memPtr) {\n\n mstore(add(memPtr, 0), \"insufficient staked balance\")\n\n }\n\n function store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: mint to the zero address\")\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", + "contents": "{\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_calldata_to_memory(src, dst, length)\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_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert(0, 0) }\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\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_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_bytes_calldata_ptrt_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value1, value2 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value3 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value4 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value2 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n // bytes -> bytes\n function abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(start, length, pos) -> end {\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n\n copy_calldata_to_memory(start, pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 35)\n store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 29)\n store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 18)\n store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256_t_bytes_calldata_ptr_t_uint256_t_bytes_memory_ptr_t_address__to_t_bytes32_t_uint256_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart , value6, value5, value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 192)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_fromStack(value2, value3, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 96))\n\n mstore(add(headStart, 128), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value5, tail)\n\n abi_encode_t_address_to_t_address_fromStack(value6, add(headStart, 160))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f__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_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029__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_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f__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_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790__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_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722__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_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f__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_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea__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_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774__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_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208__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_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db__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_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e__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_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack( tail)\n\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 abi_encode_tuple_t_uint256_t_uint256_t_bytes_memory_ptr__to_t_uint256_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__to_t_uint256_t_uint256_t_uint256_t_uint256_t_uint256__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value4, add(headStart, 128))\n\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\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 checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: transfer to the zero addr\")\n\n mstore(add(memPtr, 32), \"ess\")\n\n }\n\n function store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: approve to the zero addre\")\n\n mstore(add(memPtr, 32), \"ss\")\n\n }\n\n function store_literal_in_memory_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f(memPtr) {\n\n mstore(add(memPtr, 0), \"id must be hash of bytes data\")\n\n }\n\n function store_literal_in_memory_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790(memPtr) {\n\n mstore(add(memPtr, 0), \"7 days didn't pass\")\n\n }\n\n function store_literal_in_memory_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722(memPtr) {\n\n mstore(add(memPtr, 0), \"nonce must match timestamp index\")\n\n }\n\n function store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: burn from the zero addres\")\n\n mstore(add(memPtr, 32), \"s\")\n\n }\n\n function store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: transfer from the zero ad\")\n\n mstore(add(memPtr, 32), \"dress\")\n\n }\n\n function store_literal_in_memory_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774(memPtr) {\n\n mstore(add(memPtr, 0), \"reporter not locked for withdraw\")\n\n mstore(add(memPtr, 32), \"al\")\n\n }\n\n function store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: approve from the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function store_literal_in_memory_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db(memPtr) {\n\n mstore(add(memPtr, 0), \"insufficient staked balance\")\n\n }\n\n function store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC20: mint to the zero address\")\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", "id": 1, "language": "Yul", "name": "#utility.yul" @@ -16763,11 +16305,12 @@ ], "immutableReferences": {}, "linkReferences": {}, - "object": "608060405234801561001057600080fd5b50600436106102115760003560e01c8063733bdef011610125578063c5958af9116100ad578063ce5e11bf1161007c578063ce5e11bf1461068f578063dd62ed3e146106bf578063e07c5486146106ef578063ef0234ad1461071f578063f25133f31461073b57610211565b8063c5958af9146105f5578063c638407114610625578063c979fe9f14610643578063cb82cc8f1461067357610211565b806396426d97116100f457806396426d9714610550578063a1e588a51461056e578063a9059cbb1461059f578063b86d1d63146105cf578063bed9d861146105eb57610211565b8063733bdef0146104b257806377b03e0d146104e65780638929f4c61461051657806395d89b411461053257610211565b8063313ce567116101a857806364473df21161017757806364473df2146103e6578063699f200f1461041657806369d43bd3146104465780636fd4f2291461046457806370a082311461048257610211565b8063313ce5671461035e5780635aa6e6751461037c5780635eaa9ced1461039a578063602bf227146103b657610211565b80631f379acc116101e45780631f379acc146102b2578063217053c0146102ce57806323b872dd146102fe578063248638e51461032e57610211565b806306fdde0314610216578063091b50ff14610234578063095ea7b31461026457806318160ddd14610294575b600080fd5b61021e61076b565b60405161022b91906128fb565b60405180910390f35b61024e600480360381019061024991906123c3565b6107fd565b60405161025b91906128d9565b60405180910390f35b61027e600480360381019061027991906122c6565b6108aa565b60405161028b919061283f565b60405180910390f35b61029c6108c1565b6040516102a99190612a7d565b60405180910390f35b6102cc60048036038101906102c791906123c3565b6108cb565b005b6102e860048036038101906102e391906123c3565b6109cf565b6040516102f591906127d9565b60405180910390f35b61031860048036038101906103139190612277565b610a11565b604051610325919061283f565b60405180910390f35b61034860048036038101906103439190612302565b610abb565b604051610355919061281d565b60405180910390f35b610366610b26565b6040516103739190612b52565b60405180910390f35b610384610b3d565b60405161039191906127d9565b60405180910390f35b6103b460048036038101906103af919061232b565b610b45565b005b6103d060048036038101906103cb9190612302565b610e32565b6040516103dd9190612a7d565b60405180910390f35b61040060048036038101906103fb91906123c3565b610e4a565b60405161040d919061283f565b60405180910390f35b610430600480360381019061042b9190612302565b610e79565b60405161043d91906127d9565b60405180910390f35b61044e610eac565b60405161045b9190612a7d565b60405180910390f35b61046c610eb2565b6040516104799190612a7d565b60405180910390f35b61049c60048036038101906104979190612212565b610eb8565b6040516104a99190612a7d565b60405180910390f35b6104cc60048036038101906104c79190612212565b610f01565b6040516104dd959493929190612aff565b60405180910390f35b61050060048036038101906104fb9190612302565b61106b565b60405161050d9190612a7d565b60405180910390f35b610530600480360381019061052b9190612466565b61108b565b005b61053a611191565b60405161054791906128fb565b60405180910390f35b610558611223565b6040516105659190612a7d565b60405180910390f35b61058860048036038101906105839190612302565b61122f565b604051610596929190612a98565b60405180910390f35b6105b960048036038101906105b491906122c6565b6112bf565b6040516105c6919061283f565b60405180910390f35b6105e960048036038101906105e49190612212565b6112d6565b005b6105f36112ec565b005b61060f600480360381019061060a91906123c3565b61141e565b60405161061c91906128d9565b60405180910390f35b61062d6114d5565b60405161063a9190612a7d565b60405180910390f35b61065d600480360381019061065891906123c3565b6114db565b60405161066a9190612a7d565b60405180910390f35b61068d60048036038101906106889190612466565b61150c565b005b6106a960048036038101906106a491906123c3565b611630565b6040516106b69190612a7d565b60405180910390f35b6106d960048036038101906106d4919061223b565b6116ca565b6040516106e69190612a7d565b60405180910390f35b610709600480360381019061070491906123c3565b611751565b60405161071691906127d9565b60405180910390f35b610739600480360381019061073491906123ff565b6117a0565b005b610755600480360381019061075091906123c3565b6118ca565b6040516107629190612a7d565b60405180910390f35b6060600e805461077a90612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546107a690612dea565b80156107f35780601f106107c8576101008083540402835291602001916107f3565b820191906000526020600020905b8154815290600101906020018083116107d657829003601f168201915b5050505050905090565b600660205281600052604060002060205280600052604060002060009150915050805461082990612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461085590612dea565b80156108a25780601f10610877576101008083540402835291602001916108a2565b820191906000526020600020905b81548152906001019060200180831161088557829003601f168201915b505050505081565b60006108b73384846118fb565b6001905092915050565b6000600d54905090565b604051806020016040528060008152506006600084815260200190815260200160002060008381526020019081526020016000209080519060200190610912929190611ff8565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600c600081548092919061096290612e4d565b919050555060076000838360405160200161097e9291906127ad565b604051602081830303815290604052805190602001208152602001908152602001600020600c5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610a1e848484611ac6565b610ab0843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610aab9190612d15565b6118fb565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b1a57602002820191906000526020600020905b815481526020019060010190808311610b06575b50505050509050919050565b6000601060009054906101000a900460ff16905090565b600030905090565b60046000868152602001908152602001600020805490508214610b9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b949061299d565b60405180910390fd5b8080519060200120851480610bb6575060648560001c11155b610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec9061295d565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610c2892919061207e565b5060046000868152602001908152602001600020429080600181540180825580915050600190039060005260206000200160009091909190915055600080610c6f8761122f565b9150915060008282610c819190612c34565b1115610c9e57610c9c338383610c979190612c34565b6112bf565b505b42600a8190555081600b6000828254610cb79190612d15565b92505081905550600060056000898152602001908152602001600020819055503360026000898152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610dd490612e4d565b91905055507fab1d593f8e2ecb165106e30a39db6769078d35c3fdbb110f24932f0d7af68c29874288888587610e0a9190612c34565b898933604051610e2198979695949392919061285a565b60405180910390a150505050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110c90612a3d565b60405180910390fd5b428160000181905550818160020160008282546111329190612c34565b925050819055508181600101600082825461114d9190612d15565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516111859291906127f4565b60405180910390a15050565b6060600f80546111a090612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546111cc90612dea565b80156112195780601f106111ee57610100808354040283529160200191611219565b820191906000526020600020905b8154815290600101906020018083116111fc57829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000806000600a54426112429190612d15565b9050600061012c6706f05b59d3b200008361125d9190612cbb565b6112679190612c8a565b9050600b54816112779190612c34565b61128030610eb8565b101561129f57600b5461129230610eb8565b61129c9190612d15565b90505b600560008681526020019081526020016000205481935093505050915091565b60006112cc338484611ac6565b6001905092915050565b6112e981683635c9adc5dea00000611cbc565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426113439190612d15565b1015611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b9061297d565b60405180910390fd5b60008160020154116113cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c2906129fd565b60405180910390fd5b6113da30338360020154611ac6565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec3360405161141391906127d9565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461144f90612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461147b90612dea565b80156114c85780601f1061149d576101008083540402835291602001916114c8565b820191906000526020600020905b8154815290600101906020018083116114ab57829003601f168201915b5050505050905092915050565b600c5481565b600760205281600052604060002081815481106114f757600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816002015411156115ba5781816002015410611587578181600201600082825461157b9190612d15565b925050819055506115b5565b6115a1333083600201548561159c9190612d15565b611e05565b6115aa57600080fd5b600081600201819055505b6115cf565b6115c5333084611e05565b6115ce57600080fd5b5b428160000181905550818160010160008282546115ec9190612c34565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516116249291906127f4565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061165b5750828111155b1561166a5760009150506116c4565b6004600085815260200190815260200160002083815481106116b5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b80805190602001208314806117b9575060648360001c11155b6117f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ef9061295d565b60405180910390fd5b611803333084611ac6565b6002826118109190612c8a565b915061181c3083611eaf565b81600b600082825461182e9190612c34565b92505081905550816005600085815260200190815260200160002060008282546118589190612c34565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff5846005600088815260200190815260200160002054856040516118bd93929190612ac1565b60405180910390a3505050565b600460205281600052604060002081815481106118e657600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561196b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196290612a1d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156119db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d29061293d565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ab99190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2d906129dd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ba6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9d9061291d565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bf59190612d15565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c4b9190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611caf9190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2390612a5d565b60405180910390fd5b80600d6000828254611d3e9190612c34565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d949190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611df99190612a7d565b60405180910390a35050565b6000611e12848484611ac6565b611ea4843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9f9190612d15565b6118fb565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f16906129bd565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f6e9190612d15565b9250508190555080600d6000828254611f879190612d15565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fec9190612a7d565b60405180910390a35050565b82805461200490612dea565b90600052602060002090601f016020900481019282612026576000855561206d565b82601f1061203f57805160ff191683800117855561206d565b8280016001018555821561206d579182015b8281111561206c578251825591602001919060010190612051565b5b50905061207a9190612104565b5090565b82805461208a90612dea565b90600052602060002090601f0160209004810192826120ac57600085556120f3565b82601f106120c557803560ff19168380011785556120f3565b828001600101855582156120f3579182015b828111156120f25782358255916020019190600101906120d7565b5b5090506121009190612104565b5090565b5b8082111561211d576000816000905550600101612105565b5090565b600061213461212f84612b92565b612b6d565b90508281526020810184848401111561214c57600080fd5b612157848285612da8565b509392505050565b60008135905061216e8161321e565b92915050565b60008135905061218381613235565b92915050565b60008083601f84011261219b57600080fd5b8235905067ffffffffffffffff8111156121b457600080fd5b6020830191508360018202830111156121cc57600080fd5b9250929050565b600082601f8301126121e457600080fd5b81356121f4848260208601612121565b91505092915050565b60008135905061220c8161324c565b92915050565b60006020828403121561222457600080fd5b60006122328482850161215f565b91505092915050565b6000806040838503121561224e57600080fd5b600061225c8582860161215f565b925050602061226d8582860161215f565b9150509250929050565b60008060006060848603121561228c57600080fd5b600061229a8682870161215f565b93505060206122ab8682870161215f565b92505060406122bc868287016121fd565b9150509250925092565b600080604083850312156122d957600080fd5b60006122e78582860161215f565b92505060206122f8858286016121fd565b9150509250929050565b60006020828403121561231457600080fd5b600061232284828501612174565b91505092915050565b60008060008060006080868803121561234357600080fd5b600061235188828901612174565b955050602086013567ffffffffffffffff81111561236e57600080fd5b61237a88828901612189565b9450945050604061238d888289016121fd565b925050606086013567ffffffffffffffff8111156123aa57600080fd5b6123b6888289016121d3565b9150509295509295909350565b600080604083850312156123d657600080fd5b60006123e485828601612174565b92505060206123f5858286016121fd565b9150509250929050565b60008060006060848603121561241457600080fd5b600061242286828701612174565b9350506020612433868287016121fd565b925050604084013567ffffffffffffffff81111561245057600080fd5b61245c868287016121d3565b9150509250925092565b60006020828403121561247857600080fd5b6000612486848285016121fd565b91505092915050565b600061249b8383612769565b60208301905092915050565b6124b081612d49565b82525050565b60006124c182612bd3565b6124cb8185612c01565b93506124d683612bc3565b8060005b838110156125075781516124ee888261248f565b97506124f983612bf4565b9250506001810190506124da565b5085935050505092915050565b61251d81612d5b565b82525050565b61252c81612d67565b82525050565b61254361253e82612d67565b612e96565b82525050565b60006125558385612c12565b9350612562838584612da8565b61256b83612f66565b840190509392505050565b600061258182612bde565b61258b8185612c12565b935061259b818560208601612db7565b6125a481612f66565b840191505092915050565b60006125ba82612be9565b6125c48185612c23565b93506125d4818560208601612db7565b6125dd81612f66565b840191505092915050565b60006125f5602383612c23565b915061260082612f77565b604082019050919050565b6000612618602283612c23565b915061262382612fc6565b604082019050919050565b600061263b601d83612c23565b915061264682613015565b602082019050919050565b600061265e601283612c23565b91506126698261303e565b602082019050919050565b6000612681601783612c23565b915061268c82613067565b602082019050919050565b60006126a4602183612c23565b91506126af82613090565b604082019050919050565b60006126c7602583612c23565b91506126d2826130df565b604082019050919050565b60006126ea602283612c23565b91506126f58261312e565b604082019050919050565b600061270d602483612c23565b91506127188261317d565b604082019050919050565b6000612730601b83612c23565b915061273b826131cc565b602082019050919050565b6000612753601f83612c23565b915061275e826131f5565b602082019050919050565b61277281612d91565b82525050565b61278181612d91565b82525050565b61279861279382612d91565b612ea0565b82525050565b6127a781612d9b565b82525050565b60006127b98285612532565b6020820191506127c98284612787565b6020820191508190509392505050565b60006020820190506127ee60008301846124a7565b92915050565b600060408201905061280960008301856124a7565b6128166020830184612778565b9392505050565b6000602082019050818103600083015261283781846124b6565b905092915050565b60006020820190506128546000830184612514565b92915050565b600060e08201905061286f600083018b612523565b61287c602083018a612778565b818103604083015261288f81888a612549565b905061289e6060830187612778565b6128ab6080830186612778565b81810360a08301526128bd8185612576565b90506128cc60c08301846124a7565b9998505050505050505050565b600060208201905081810360008301526128f38184612576565b905092915050565b6000602082019050818103600083015261291581846125af565b905092915050565b60006020820190508181036000830152612936816125e8565b9050919050565b600060208201905081810360008301526129568161260b565b9050919050565b600060208201905081810360008301526129768161262e565b9050919050565b6000602082019050818103600083015261299681612651565b9050919050565b600060208201905081810360008301526129b681612674565b9050919050565b600060208201905081810360008301526129d681612697565b9050919050565b600060208201905081810360008301526129f6816126ba565b9050919050565b60006020820190508181036000830152612a16816126dd565b9050919050565b60006020820190508181036000830152612a3681612700565b9050919050565b60006020820190508181036000830152612a5681612723565b9050919050565b60006020820190508181036000830152612a7681612746565b9050919050565b6000602082019050612a926000830184612778565b92915050565b6000604082019050612aad6000830185612778565b612aba6020830184612778565b9392505050565b6000606082019050612ad66000830186612778565b612ae36020830185612778565b8181036040830152612af58184612576565b9050949350505050565b600060a082019050612b146000830188612778565b612b216020830187612778565b612b2e6040830186612778565b612b3b6060830185612778565b612b486080830184612778565b9695505050505050565b6000602082019050612b67600083018461279e565b92915050565b6000612b77612b88565b9050612b838282612e1c565b919050565b6000604051905090565b600067ffffffffffffffff821115612bad57612bac612f37565b5b612bb682612f66565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612c3f82612d91565b9150612c4a83612d91565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612c7f57612c7e612eaa565b5b828201905092915050565b6000612c9582612d91565b9150612ca083612d91565b925082612cb057612caf612ed9565b5b828204905092915050565b6000612cc682612d91565b9150612cd183612d91565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612d0a57612d09612eaa565b5b828202905092915050565b6000612d2082612d91565b9150612d2b83612d91565b925082821015612d3e57612d3d612eaa565b5b828203905092915050565b6000612d5482612d71565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612dd5578082015181840152602081019050612dba565b83811115612de4576000848401525b50505050565b60006002820490506001821680612e0257607f821691505b60208210811415612e1657612e15612f08565b5b50919050565b612e2582612f66565b810181811067ffffffffffffffff82111715612e4457612e43612f37565b5b80604052505050565b6000612e5882612d91565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612e8b57612e8a612eaa565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e63652073686f756c6420626520636f7272656374000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61322781612d49565b811461323257600080fd5b50565b61323e81612d67565b811461324957600080fd5b50565b61325581612d91565b811461326057600080fd5b5056fea26469706673582212205747f0fa66590dfa09380f3385223fd9b03ed7174dc806da9f3313f1bb28176c64736f6c63430008030033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x211 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x733BDEF0 GT PUSH2 0x125 JUMPI DUP1 PUSH4 0xC5958AF9 GT PUSH2 0xAD JUMPI DUP1 PUSH4 0xCE5E11BF GT PUSH2 0x7C JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x68F JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x6BF JUMPI DUP1 PUSH4 0xE07C5486 EQ PUSH2 0x6EF JUMPI DUP1 PUSH4 0xEF0234AD EQ PUSH2 0x71F JUMPI DUP1 PUSH4 0xF25133F3 EQ PUSH2 0x73B JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x5F5 JUMPI DUP1 PUSH4 0xC6384071 EQ PUSH2 0x625 JUMPI DUP1 PUSH4 0xC979FE9F EQ PUSH2 0x643 JUMPI DUP1 PUSH4 0xCB82CC8F EQ PUSH2 0x673 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x96426D97 GT PUSH2 0xF4 JUMPI DUP1 PUSH4 0x96426D97 EQ PUSH2 0x550 JUMPI DUP1 PUSH4 0xA1E588A5 EQ PUSH2 0x56E JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x59F JUMPI DUP1 PUSH4 0xB86D1D63 EQ PUSH2 0x5CF JUMPI DUP1 PUSH4 0xBED9D861 EQ PUSH2 0x5EB JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x733BDEF0 EQ PUSH2 0x4B2 JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x4E6 JUMPI DUP1 PUSH4 0x8929F4C6 EQ PUSH2 0x516 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x532 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x1A8 JUMPI DUP1 PUSH4 0x64473DF2 GT PUSH2 0x177 JUMPI DUP1 PUSH4 0x64473DF2 EQ PUSH2 0x3E6 JUMPI DUP1 PUSH4 0x699F200F EQ PUSH2 0x416 JUMPI DUP1 PUSH4 0x69D43BD3 EQ PUSH2 0x446 JUMPI DUP1 PUSH4 0x6FD4F229 EQ PUSH2 0x464 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x482 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 EQ PUSH2 0x35E JUMPI DUP1 PUSH4 0x5AA6E675 EQ PUSH2 0x37C JUMPI DUP1 PUSH4 0x5EAA9CED EQ PUSH2 0x39A JUMPI DUP1 PUSH4 0x602BF227 EQ PUSH2 0x3B6 JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x1F379ACC GT PUSH2 0x1E4 JUMPI DUP1 PUSH4 0x1F379ACC EQ PUSH2 0x2B2 JUMPI DUP1 PUSH4 0x217053C0 EQ PUSH2 0x2CE JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2FE JUMPI DUP1 PUSH4 0x248638E5 EQ PUSH2 0x32E JUMPI PUSH2 0x211 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x216 JUMPI DUP1 PUSH4 0x91B50FF EQ PUSH2 0x234 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x264 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x294 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x21E PUSH2 0x76B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x22B SWAP2 SWAP1 PUSH2 0x28FB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x24E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x249 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x7FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x25B SWAP2 SWAP1 PUSH2 0x28D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x27E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x279 SWAP2 SWAP1 PUSH2 0x22C6 JUMP JUMPDEST PUSH2 0x8AA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x28B SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x29C PUSH2 0x8C1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2A9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2CC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2C7 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x8CB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2E8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2E3 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x9CF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2F5 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x318 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x313 SWAP2 SWAP1 PUSH2 0x2277 JUMP JUMPDEST PUSH2 0xA11 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x325 SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x348 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x343 SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0xABB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x355 SWAP2 SWAP1 PUSH2 0x281D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x366 PUSH2 0xB26 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x373 SWAP2 SWAP1 PUSH2 0x2B52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x384 PUSH2 0xB3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x391 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3B4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3AF SWAP2 SWAP1 PUSH2 0x232B JUMP JUMPDEST PUSH2 0xB45 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3D0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3CB SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0xE32 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3DD SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x400 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3FB SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0xE4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x40D SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x430 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x42B SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0xE79 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x43D SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x44E PUSH2 0xEAC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x45B SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x46C PUSH2 0xEB2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x479 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x49C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x497 SWAP2 SWAP1 PUSH2 0x2212 JUMP JUMPDEST PUSH2 0xEB8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4CC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4C7 SWAP2 SWAP1 PUSH2 0x2212 JUMP JUMPDEST PUSH2 0xF01 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4DD SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2AFF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x500 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4FB SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0x106B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x50D SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x530 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x52B SWAP2 SWAP1 PUSH2 0x2466 JUMP JUMPDEST PUSH2 0x108B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x53A PUSH2 0x1191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x547 SWAP2 SWAP1 PUSH2 0x28FB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x558 PUSH2 0x1223 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x565 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x588 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x583 SWAP2 SWAP1 PUSH2 0x2302 JUMP JUMPDEST PUSH2 0x122F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x596 SWAP3 SWAP2 SWAP1 PUSH2 0x2A98 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5B9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B4 SWAP2 SWAP1 PUSH2 0x22C6 JUMP JUMPDEST PUSH2 0x12BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5C6 SWAP2 SWAP1 PUSH2 0x283F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5E9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5E4 SWAP2 SWAP1 PUSH2 0x2212 JUMP JUMPDEST PUSH2 0x12D6 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5F3 PUSH2 0x12EC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x60F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x60A SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x141E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x61C SWAP2 SWAP1 PUSH2 0x28D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x62D PUSH2 0x14D5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x63A SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x65D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x658 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x14DB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66A SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x68D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x688 SWAP2 SWAP1 PUSH2 0x2466 JUMP JUMPDEST PUSH2 0x150C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6A4 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x1630 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6B6 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6D9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6D4 SWAP2 SWAP1 PUSH2 0x223B JUMP JUMPDEST PUSH2 0x16CA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6E6 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x709 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x704 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x1751 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x716 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x739 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x734 SWAP2 SWAP1 PUSH2 0x23FF JUMP JUMPDEST PUSH2 0x17A0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x755 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x750 SWAP2 SWAP1 PUSH2 0x23C3 JUMP JUMPDEST PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x762 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0xE DUP1 SLOAD PUSH2 0x77A SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x7A6 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7F3 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x7C8 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7F3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x7D6 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP POP DUP1 SLOAD PUSH2 0x829 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x855 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x8A2 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x877 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x8A2 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x885 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8B7 CALLER DUP5 DUP5 PUSH2 0x18FB JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x912 SWAP3 SWAP2 SWAP1 PUSH2 0x1FF8 JUMP JUMPDEST POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x962 SWAP1 PUSH2 0x2E4D JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x97E SWAP3 SWAP2 SWAP1 PUSH2 0x27AD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC SLOAD SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA1E DUP5 DUP5 DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH2 0xAB0 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xAAB SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST PUSH2 0x18FB JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0xB1A JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0xB06 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x10 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 ADDRESS SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP DUP3 EQ PUSH2 0xB9D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB94 SWAP1 PUSH2 0x299D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 EQ DUP1 PUSH2 0xBB6 JUMPI POP PUSH1 0x64 DUP6 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0xBF5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBEC SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 SWAP1 PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x207E JUMP JUMPDEST POP PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 TIMESTAMP SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE PUSH1 0x0 DUP1 PUSH2 0xC6F DUP8 PUSH2 0x122F JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH1 0x0 DUP3 DUP3 PUSH2 0xC81 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST GT ISZERO PUSH2 0xC9E JUMPI PUSH2 0xC9C CALLER DUP4 DUP4 PUSH2 0xC97 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST PUSH2 0x12BF JUMP JUMPDEST POP JUMPDEST TIMESTAMP PUSH1 0xA DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0xCB7 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP CALLER PUSH1 0x2 PUSH1 0x0 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP TIMESTAMP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0xDD4 SWAP1 PUSH2 0x2E4D JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH32 0xAB1D593F8E2ECB165106E30A39DB6769078D35C3FDBB110F24932F0D7AF68C29 DUP8 TIMESTAMP DUP9 DUP9 DUP6 DUP8 PUSH2 0xE0A SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST DUP10 DUP10 CALLER PUSH1 0x40 MLOAD PUSH2 0xE21 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP12 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP2 SWAP4 SWAP6 SWAP1 SWAP3 SWAP5 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x1 ADD SLOAD LT ISZERO PUSH2 0x1115 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x110C SWAP1 PUSH2 0x2A3D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1132 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x114D SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0x3D8D9DF4BD0172DF32E557FA48E96435CD7F2CAC06AAFFACFAEE608E6F7898EF CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x1185 SWAP3 SWAP2 SWAP1 PUSH2 0x27F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xF DUP1 SLOAD PUSH2 0x11A0 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x11CC SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1219 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x11EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1219 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x11FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0x6F05B59D3B20000 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA SLOAD TIMESTAMP PUSH2 0x1242 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x12C PUSH8 0x6F05B59D3B20000 DUP4 PUSH2 0x125D SWAP2 SWAP1 PUSH2 0x2CBB JUMP JUMPDEST PUSH2 0x1267 SWAP2 SWAP1 PUSH2 0x2C8A JUMP JUMPDEST SWAP1 POP PUSH1 0xB SLOAD DUP2 PUSH2 0x1277 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST PUSH2 0x1280 ADDRESS PUSH2 0xEB8 JUMP JUMPDEST LT ISZERO PUSH2 0x129F JUMPI PUSH1 0xB SLOAD PUSH2 0x1292 ADDRESS PUSH2 0xEB8 JUMP JUMPDEST PUSH2 0x129C SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x5 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP2 SWAP4 POP SWAP4 POP POP POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x12CC CALLER DUP5 DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x12E9 DUP2 PUSH9 0x3635C9ADC5DEA00000 PUSH2 0x1CBC JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH3 0x93A80 DUP2 PUSH1 0x0 ADD SLOAD TIMESTAMP PUSH2 0x1343 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST LT ISZERO PUSH2 0x1384 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x137B SWAP1 PUSH2 0x297D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT PUSH2 0x13CB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13C2 SWAP1 PUSH2 0x29FD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x13DA ADDRESS CALLER DUP4 PUSH1 0x2 ADD SLOAD PUSH2 0x1AC6 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH32 0x4A7934670BD8304E7DA22378BE1368F7C4FEF17C5AEE81804BEDA8638FE428EC CALLER PUSH1 0x40 MLOAD PUSH2 0x1413 SWAP2 SWAP1 PUSH2 0x27D9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x144F SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x147B SWAP1 PUSH2 0x2DEA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x14C8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x149D JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x14C8 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x14AB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xC SLOAD DUP2 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x14F7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT ISZERO PUSH2 0x15BA JUMPI DUP2 DUP2 PUSH1 0x2 ADD SLOAD LT PUSH2 0x1587 JUMPI DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x157B SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x15B5 JUMP JUMPDEST PUSH2 0x15A1 CALLER ADDRESS DUP4 PUSH1 0x2 ADD SLOAD DUP6 PUSH2 0x159C SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST PUSH2 0x1E05 JUMP JUMPDEST PUSH2 0x15AA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP JUMPDEST PUSH2 0x15CF JUMP JUMPDEST PUSH2 0x15C5 CALLER ADDRESS DUP5 PUSH2 0x1E05 JUMP JUMPDEST PUSH2 0x15CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15EC SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0xA96C2CCE65119A2170D1711A6E82F18F2006448828483BA7545E595476543647 CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x1624 SWAP3 SWAP2 SWAP1 PUSH2 0x27F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP2 EQ DUP1 PUSH2 0x165B JUMPI POP DUP3 DUP2 GT ISZERO JUMPDEST ISZERO PUSH2 0x166A JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x16C4 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x16B5 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD SLOAD SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP4 EQ DUP1 PUSH2 0x17B9 JUMPI POP PUSH1 0x64 DUP4 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0x17F8 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17EF SWAP1 PUSH2 0x295D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1803 CALLER ADDRESS DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH2 0x1810 SWAP2 SWAP1 PUSH2 0x2C8A JUMP JUMPDEST SWAP2 POP PUSH2 0x181C ADDRESS DUP4 PUSH2 0x1EAF JUMP JUMPDEST DUP2 PUSH1 0xB PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x182E SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1858 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xD951D408A0F5057DA5C25B826FB5CE403D56542962B6AC6994DBC6D5432FBFF5 DUP5 PUSH1 0x5 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP6 PUSH1 0x40 MLOAD PUSH2 0x18BD SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2AC1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x18E6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x196B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1962 SWAP1 PUSH2 0x2A1D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x19DB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19D2 SWAP1 PUSH2 0x293D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x8 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1AB9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1B36 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B2D SWAP1 PUSH2 0x29DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1BA6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B9D SWAP1 PUSH2 0x291D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1BF5 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C4B SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1CAF SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1D2C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D23 SWAP1 PUSH2 0x2A5D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D3E SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1D94 SWAP2 SWAP1 PUSH2 0x2C34 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1DF9 SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E12 DUP5 DUP5 DUP5 PUSH2 0x1AC6 JUMP JUMPDEST PUSH2 0x1EA4 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x1E9F SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST PUSH2 0x18FB JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1F1F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1F16 SWAP1 PUSH2 0x29BD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F6E SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0xD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1F87 SWAP2 SWAP1 PUSH2 0x2D15 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1FEC SWAP2 SWAP1 PUSH2 0x2A7D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x2004 SWAP1 PUSH2 0x2DEA JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x2026 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x206D JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x203F JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x206D JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x206D JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x206C JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2051 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x207A SWAP2 SWAP1 PUSH2 0x2104 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x208A SWAP1 PUSH2 0x2DEA JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x20AC JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x20F3 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x20C5 JUMPI DUP1 CALLDATALOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x20F3 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x20F3 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x20F2 JUMPI DUP3 CALLDATALOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x20D7 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2100 SWAP2 SWAP1 PUSH2 0x2104 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x211D JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2105 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2134 PUSH2 0x212F DUP5 PUSH2 0x2B92 JUMP JUMPDEST PUSH2 0x2B6D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x214C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2157 DUP5 DUP3 DUP6 PUSH2 0x2DA8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x216E DUP2 PUSH2 0x321E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2183 DUP2 PUSH2 0x3235 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x219B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x21B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x21CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x21E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x21F4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2121 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x220C DUP2 PUSH2 0x324C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2224 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2232 DUP5 DUP3 DUP6 ADD PUSH2 0x215F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x224E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x225C DUP6 DUP3 DUP7 ADD PUSH2 0x215F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x226D DUP6 DUP3 DUP7 ADD PUSH2 0x215F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x228C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x229A DUP7 DUP3 DUP8 ADD PUSH2 0x215F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x22AB DUP7 DUP3 DUP8 ADD PUSH2 0x215F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x22BC DUP7 DUP3 DUP8 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x22D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22E7 DUP6 DUP3 DUP7 ADD PUSH2 0x215F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22F8 DUP6 DUP3 DUP7 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2314 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2322 DUP5 DUP3 DUP6 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x2343 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2351 DUP9 DUP3 DUP10 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x236E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x237A DUP9 DUP3 DUP10 ADD PUSH2 0x2189 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 PUSH2 0x238D DUP9 DUP3 DUP10 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x23AA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x23B6 DUP9 DUP3 DUP10 ADD PUSH2 0x21D3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x23D6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x23E4 DUP6 DUP3 DUP7 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x23F5 DUP6 DUP3 DUP7 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2414 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2422 DUP7 DUP3 DUP8 ADD PUSH2 0x2174 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2433 DUP7 DUP3 DUP8 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2450 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x245C DUP7 DUP3 DUP8 ADD PUSH2 0x21D3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2478 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2486 DUP5 DUP3 DUP6 ADD PUSH2 0x21FD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x249B DUP4 DUP4 PUSH2 0x2769 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x24B0 DUP2 PUSH2 0x2D49 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24C1 DUP3 PUSH2 0x2BD3 JUMP JUMPDEST PUSH2 0x24CB DUP2 DUP6 PUSH2 0x2C01 JUMP JUMPDEST SWAP4 POP PUSH2 0x24D6 DUP4 PUSH2 0x2BC3 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2507 JUMPI DUP2 MLOAD PUSH2 0x24EE DUP9 DUP3 PUSH2 0x248F JUMP JUMPDEST SWAP8 POP PUSH2 0x24F9 DUP4 PUSH2 0x2BF4 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x24DA JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x251D DUP2 PUSH2 0x2D5B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x252C DUP2 PUSH2 0x2D67 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2543 PUSH2 0x253E DUP3 PUSH2 0x2D67 JUMP JUMPDEST PUSH2 0x2E96 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2555 DUP4 DUP6 PUSH2 0x2C12 JUMP JUMPDEST SWAP4 POP PUSH2 0x2562 DUP4 DUP6 DUP5 PUSH2 0x2DA8 JUMP JUMPDEST PUSH2 0x256B DUP4 PUSH2 0x2F66 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2581 DUP3 PUSH2 0x2BDE JUMP JUMPDEST PUSH2 0x258B DUP2 DUP6 PUSH2 0x2C12 JUMP JUMPDEST SWAP4 POP PUSH2 0x259B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2DB7 JUMP JUMPDEST PUSH2 0x25A4 DUP2 PUSH2 0x2F66 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25BA DUP3 PUSH2 0x2BE9 JUMP JUMPDEST PUSH2 0x25C4 DUP2 DUP6 PUSH2 0x2C23 JUMP JUMPDEST SWAP4 POP PUSH2 0x25D4 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2DB7 JUMP JUMPDEST PUSH2 0x25DD DUP2 PUSH2 0x2F66 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F5 PUSH1 0x23 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2600 DUP3 PUSH2 0x2F77 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2618 PUSH1 0x22 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2623 DUP3 PUSH2 0x2FC6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x263B PUSH1 0x1D DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2646 DUP3 PUSH2 0x3015 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x265E PUSH1 0x12 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2669 DUP3 PUSH2 0x303E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2681 PUSH1 0x17 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x268C DUP3 PUSH2 0x3067 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26A4 PUSH1 0x21 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x26AF DUP3 PUSH2 0x3090 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26C7 PUSH1 0x25 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x26D2 DUP3 PUSH2 0x30DF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26EA PUSH1 0x22 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x26F5 DUP3 PUSH2 0x312E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x270D PUSH1 0x24 DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x2718 DUP3 PUSH2 0x317D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2730 PUSH1 0x1B DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x273B DUP3 PUSH2 0x31CC JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2753 PUSH1 0x1F DUP4 PUSH2 0x2C23 JUMP JUMPDEST SWAP2 POP PUSH2 0x275E DUP3 PUSH2 0x31F5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2772 DUP2 PUSH2 0x2D91 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2781 DUP2 PUSH2 0x2D91 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2798 PUSH2 0x2793 DUP3 PUSH2 0x2D91 JUMP JUMPDEST PUSH2 0x2EA0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x27A7 DUP2 PUSH2 0x2D9B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27B9 DUP3 DUP6 PUSH2 0x2532 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x27C9 DUP3 DUP5 PUSH2 0x2787 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27EE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24A7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2809 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x24A7 JUMP JUMPDEST PUSH2 0x2816 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2837 DUP2 DUP5 PUSH2 0x24B6 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2854 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2514 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 ADD SWAP1 POP PUSH2 0x286F PUSH1 0x0 DUP4 ADD DUP12 PUSH2 0x2523 JUMP JUMPDEST PUSH2 0x287C PUSH1 0x20 DUP4 ADD DUP11 PUSH2 0x2778 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x288F DUP2 DUP9 DUP11 PUSH2 0x2549 JUMP JUMPDEST SWAP1 POP PUSH2 0x289E PUSH1 0x60 DUP4 ADD DUP8 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x28AB PUSH1 0x80 DUP4 ADD DUP7 PUSH2 0x2778 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0xA0 DUP4 ADD MSTORE PUSH2 0x28BD DUP2 DUP6 PUSH2 0x2576 JUMP JUMPDEST SWAP1 POP PUSH2 0x28CC PUSH1 0xC0 DUP4 ADD DUP5 PUSH2 0x24A7 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28F3 DUP2 DUP5 PUSH2 0x2576 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2915 DUP2 DUP5 PUSH2 0x25AF JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2936 DUP2 PUSH2 0x25E8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2956 DUP2 PUSH2 0x260B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2976 DUP2 PUSH2 0x262E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2996 DUP2 PUSH2 0x2651 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29B6 DUP2 PUSH2 0x2674 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29D6 DUP2 PUSH2 0x2697 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x29F6 DUP2 PUSH2 0x26BA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A16 DUP2 PUSH2 0x26DD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A36 DUP2 PUSH2 0x2700 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A56 DUP2 PUSH2 0x2723 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A76 DUP2 PUSH2 0x2746 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2A92 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2AAD PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2ABA PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x2AD6 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2AE3 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2778 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2AF5 DUP2 DUP5 PUSH2 0x2576 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x2B14 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B21 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B2E PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B3B PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2778 JUMP JUMPDEST PUSH2 0x2B48 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2778 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2B67 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x279E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B77 PUSH2 0x2B88 JUMP JUMPDEST SWAP1 POP PUSH2 0x2B83 DUP3 DUP3 PUSH2 0x2E1C JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2BAD JUMPI PUSH2 0x2BAC PUSH2 0x2F37 JUMP JUMPDEST JUMPDEST PUSH2 0x2BB6 DUP3 PUSH2 0x2F66 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C3F DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C4A DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2C7F JUMPI PUSH2 0x2C7E PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C95 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CA0 DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2CB0 JUMPI PUSH2 0x2CAF PUSH2 0x2ED9 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2CC6 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2CD1 DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2D0A JUMPI PUSH2 0x2D09 PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D20 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH2 0x2D2B DUP4 PUSH2 0x2D91 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2D3E JUMPI PUSH2 0x2D3D PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D54 DUP3 PUSH2 0x2D71 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2DD5 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2DBA JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2DE4 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2E02 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2E16 JUMPI PUSH2 0x2E15 PUSH2 0x2F08 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E25 DUP3 PUSH2 0x2F66 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2E44 JUMPI PUSH2 0x2E43 PUSH2 0x2F37 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E58 DUP3 PUSH2 0x2D91 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2E8B JUMPI PUSH2 0x2E8A PUSH2 0x2EAA JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6964206D7573742062652068617368206F662062797465732064617461000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x372064617973206469646E277420706173730000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6E6F6E63652073686F756C6420626520636F7272656374000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x7265706F72746572206E6F74206C6F636B656420666F72207769746864726177 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616C000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x696E73756666696369656E74207374616B65642062616C616E63650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3227 DUP2 PUSH2 0x2D49 JUMP JUMPDEST DUP2 EQ PUSH2 0x3232 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x323E DUP2 PUSH2 0x2D67 JUMP JUMPDEST DUP2 EQ PUSH2 0x3249 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3255 DUP2 PUSH2 0x2D91 JUMP JUMPDEST DUP2 EQ PUSH2 0x3260 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 JUMPI SELFBALANCE CREATE STATICCALL PUSH7 0x590DFA09380F33 DUP6 0x22 EXTCODEHASH 0xD9 0xB0 RETURNDATACOPY 0xD7 OR 0x4D 0xC8 MOD 0xDA SWAP16 CALLER SGT CALL 0xBB 0x28 OR PUSH13 0x64736F6C634300080300330000 ", - "sourceMap": "57:18212:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14383:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1333:59;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3126:187;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15191:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3501:305;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;991:74;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7278:342;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13920:146;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11958:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14185:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4432:1267;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1228:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;891:62;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;841:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1922:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1796:51;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11670:110;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10551:497;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;13052:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8758:431;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14988:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1672:46;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12343:488;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6801:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3954:81;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9252:461;;;:::i;:::-;;14704:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1995:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1430:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7755:847;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13435:283;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11339:180;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9949:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5937:618;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1175:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14383:81;14420:13;14452:5;14445:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14383:81;:::o;1333:59::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3126:187::-;3226:4;3246:39;3255:10;3267:8;3277:7;3246:8;:39::i;:::-;3302:4;3295:11;;3126:187;;;;:::o;15191:89::-;15235:7;15261:12;;15254:19;;15191:89;:::o;3501:305::-;3611:9;;;;;;;;;;;;3580:6;:16;3587:8;3580:16;;;;;;;;;;;:28;3597:10;3580:28;;;;;;;;;;;:40;;;;;;;;;;;;:::i;:::-;;3665:4;3630:10;:20;3641:8;3630:20;;;;;;;;;;;:32;3651:10;3630:32;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;3679:9;;:11;;;;;;;;;:::i;:::-;;;;;;3700:10;:61;3738:8;3748:10;3721:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3711:49;;;;;;3700:61;;;;;;;;;;;3780:9;;3700:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3501:305;;:::o;991:74::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7278:342::-;7408:4;7424:39;7434:7;7443:10;7455:7;7424:9;:39::i;:::-;7473:119;7495:7;7516:10;7575:7;7540:11;:20;7552:7;7540:20;;;;;;;;;;;;;;;:32;7561:10;7540:32;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;7473:8;:119::i;:::-;7609:4;7602:11;;7278:342;;;;;:::o;13920:146::-;14003:16;14042:10;:17;14053:5;14042:17;;;;;;;;;;;14035:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13920:146;;;:::o;11958:81::-;11999:5;12023:9;;;;;;;;;;;12016:16;;11958:81;:::o;14185:89::-;14229:7;14262:4;14247:20;;14185:89;:::o;4432:1267::-;4623:10;:20;4634:8;4623:20;;;;;;;;;;;:27;;;;4613:6;:37;4592:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;4752:10;4742:21;;;;;;4730:8;:33;:61;;;;4788:3;4775:8;4767:17;;:24;;4730:61;4709:137;;;;;;;;;;;;:::i;:::-;;;;;;;;;4892:6;;4856;:16;4863:8;4856:16;;;;;;;;;;;:33;4873:15;4856:33;;;;;;;;;;;:42;;;;;;;:::i;:::-;;4908:10;:20;4919:8;4908:20;;;;;;;;;;;4934:15;4908:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5034:12;5048:15;5067:26;5084:8;5067:16;:26::i;:::-;5033:60;;;;5124:1;5117:4;5107:7;:14;;;;:::i;:::-;:18;5103:85;;;5141:36;5150:10;5172:4;5162:7;:14;;;;:::i;:::-;5141:8;:36::i;:::-;;5103:85;5218:15;5197:18;:36;;;;5261:4;5243:14;;:22;;;;;;;:::i;:::-;;;;;;;;5292:1;5275:4;:14;5280:8;5275:14;;;;;;;;;;;:18;;;;5352:10;5303:19;:29;5323:8;5303:29;;;;;;;;;;;:46;5333:15;5303:46;;;;;;;;;;;;:59;;;;;;;;;;;;;;;;;;5422:15;5372:13;:25;5386:10;5372:25;;;;;;;;;;;;;;;:47;;:65;;;;5447:13;:25;5461:10;5447:25;;;;;;;;;;;;;;;:42;;;:44;;;;;;;;;:::i;:::-;;;;;;5506:186;5529:8;5551:15;5580:6;;5607:7;5600:4;:14;;;;:::i;:::-;5628:6;5648:10;5672;5506:186;;;;;;;;;;;;;:::i;:::-;;;;;;;;4432:1267;;;;;;;:::o;1228:39::-;;;;;;;;;;;;;;;;;:::o;891:62::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;841:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;1922:29::-;;;;:::o;1796:51::-;;;;:::o;11670:110::-;11728:7;11754:9;:19;11764:8;11754:19;;;;;;;;;;;;;;;;11747:26;;11670:110;;;:::o;10551:497::-;10651:7;10672;10693;10714;10735;10788:13;:22;10802:7;10788:22;;;;;;;;;;;;;;;:32;;;10834:13;:22;10848:7;10834:22;;;;;;;;;;;;;;;:36;;;10884:13;:22;10898:7;10884:22;;;;;;;;;;;;;;;:36;;;10934:13;:22;10948:7;10934:22;;;;;;;;;;;;;;;:44;;;10992:13;:22;11006:7;10992:22;;;;;;;;;;;;;;;:39;;;10767:274;;;;;;;;;;10551:497;;;;;;;:::o;13052:162::-;13150:7;13180:10;:20;13191:8;13180:20;;;;;;;;;;;:27;;;;13173:34;;13052:162;;;:::o;8758:431::-;8826:25;8854:13;:25;8868:10;8854:25;;;;;;;;;;;;;;;8826:53;;8935:7;8910;:21;;;:32;;8889:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;9025:15;9005:7;:17;;:35;;;;9075:7;9050;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;9117:7;9092;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;9139:43;9162:10;9174:7;9139:43;;;;;;;:::i;:::-;;;;;;;;8758:431;;:::o;14988:85::-;15027:13;15059:7;15052:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14988:85;:::o;1672:46::-;1714:4;1672:46;:::o;12343:488::-;12432:7;12441;12464:17;12502:18;;12484:15;:36;;;;:::i;:::-;12464:56;;12530:15;12580:3;1714:4;12549:9;:27;;;;:::i;:::-;12548:35;;;;:::i;:::-;12530:53;;12691:14;;12681:7;:24;;;;:::i;:::-;12654;12672:4;12654:9;:24::i;:::-;:51;12650:133;;;12758:14;;12731:24;12749:4;12731:9;:24::i;:::-;:41;;;;:::i;:::-;12721:51;;12650:133;12800:4;:14;12805:8;12800:14;;;;;;;;;;;;12816:7;12792:32;;;;;;12343:488;;;:::o;6801:193::-;6904:4;6924:42;6934:10;6946;6958:7;6924:9;:42::i;:::-;6983:4;6976:11;;6801:193;;;;:::o;3954:81::-;4004:24;4010:5;4017:10;4004:5;:24::i;:::-;3954:81;:::o;9252:461::-;9296:20;9319:13;:25;9333:10;9319:25;;;;;;;;;;;;;;;9296:48;;9465:6;9449:2;:12;;;9431:15;:30;;;;:::i;:::-;:40;;9423:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9531:1;9512:2;:16;;;:20;9504:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9581:54;9599:4;9606:10;9618:2;:16;;;9581:9;:54::i;:::-;9664:1;9645:2;:16;;:20;;;;9680:26;9695:10;9680:26;;;;;;:::i;:::-;;;;;;;;9252:461;:::o;14704:175::-;14809:12;14844:6;:16;14851:8;14844:16;;;;;;;;;;;:28;14861:10;14844:28;;;;;;;;;;;14837:35;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14704:175;;;;:::o;1995:24::-;;;;:::o;1430:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7755:847::-;7813:25;7841:13;:25;7855:10;7841:25;;;;;;;;;;;;;;;7813:53;;7904:1;7880:7;:21;;;:25;7876:543;;;7950:7;7925;:21;;;:32;7921:399;;8002:7;7977;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;7921:399;;;8077:167;8116:10;8160:4;8201:7;:21;;;8191:7;:31;;;;:::i;:::-;8077:13;:167::i;:::-;8048:214;;;;;;8304:1;8280:7;:21;;:25;;;;7921:399;7876:543;;;8358:49;8372:10;8392:4;8399:7;8358:13;:49::i;:::-;8350:58;;;;;;7876:543;8448:15;8428:7;:17;;:35;;;;8543:7;8518;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;8565:30;8575:10;8587:7;8565:30;;;;;;;:::i;:::-;;;;;;;;7755:847;;:::o;13435:283::-;13553:7;13576:11;13590:10;:20;13601:8;13590:20;;;;;;;;;;;:27;;;;13576:41;;13638:1;13631:3;:8;:25;;;;13650:6;13643:3;:13;;13631:25;13627:39;;;13665:1;13658:8;;;;;13627:39;13683:10;:20;13694:8;13683:20;;;;;;;;;;;13704:6;13683:28;;;;;;;;;;;;;;;;;;;;;;;;13676:35;;;13435:283;;;;;:::o;11339:180::-;11453:7;11483:11;:19;11495:6;11483:19;;;;;;;;;;;;;;;:29;11503:8;11483:29;;;;;;;;;;;;;;;;11476:36;;11339:180;;;;:::o;9949:195::-;10066:7;10096:19;:29;10116:8;10096:29;;;;;;;;;;;:41;10126:10;10096:41;;;;;;;;;;;;;;;;;;;;;10089:48;;9949:195;;;;:::o;5937:618::-;6107:10;6097:21;;;;;;6085:8;:33;:61;;;;6143:3;6130:8;6122:17;;:24;;6085:61;6064:137;;;;;;;;;;;;:::i;:::-;;;;;;;;;6211:45;6221:10;6241:4;6248:7;6211:9;:45::i;:::-;6286:1;6276:7;:11;;;;:::i;:::-;6266:21;;6297:29;6311:4;6318:7;6297:5;:29::i;:::-;6354:7;6336:14;;:25;;;;;;;:::i;:::-;;;;;;;;6389:7;6371:4;:14;6376:8;6371:14;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;6457:8;6433:10;6411:137;;;6479:7;6500:4;:14;6505:8;6500:14;;;;;;;;;;;;6528:10;6411:137;;;;;;;;:::i;:::-;;;;;;;;5937:618;;;:::o;1175:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;15582:380::-;15734:1;15716:20;;:6;:20;;;;15708:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;15815:1;15795:22;;:8;:22;;;;15787:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;15898:7;15866:11;:19;15878:6;15866:19;;;;;;;;;;;;;;;:29;15886:8;15866:29;;;;;;;;;;;;;;;:39;;;;15937:8;15920:35;;15929:6;15920:35;;;15947:7;15920:35;;;;;;:::i;:::-;;;;;;;;15582:380;;;:::o;17149:458::-;17306:1;17287:21;;:7;:21;;;;17279:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;17403:1;17381:24;;:10;:24;;;;17360:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;17498:7;17476:9;:18;17486:7;17476:18;;;;;;;;;;;;;;;;:29;;;;;;;:::i;:::-;;;;;;;;17540:7;17515:9;:21;17525:10;17515:21;;;;;;;;;;;;;;;;:32;;;;;;;:::i;:::-;;;;;;;;17580:10;17562:38;;17571:7;17562:38;;;17592:7;17562:38;;;;;;:::i;:::-;;;;;;;;17149:458;;;:::o;16632:277::-;16737:1;16717:22;;:8;:22;;;;16709:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;16801:7;16785:12;;:23;;;;;;;:::i;:::-;;;;;;;;16841:7;16818:9;:19;16828:8;16818:19;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;16884:8;16863:39;;16880:1;16863:39;;;16894:7;16863:39;;;;;;:::i;:::-;;;;;;;;16632:277;;:::o;17919:348::-;18052:4;18068:39;18078:7;18087:10;18099:7;18068:9;:39::i;:::-;18117:122;18139:7;18160:10;18222:7;18184:11;:20;18196:7;18184:20;;;;;;;;;;;;;;;:35;18213:4;18184:35;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;18117:8;:122::i;:::-;18256:4;18249:11;;17919:348;;;;;:::o;16151:279::-;16256:1;16236:22;;:8;:22;;;;16228:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16329:7;16306:9;:19;16316:8;16306:19;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;16362:7;16346:12;;:23;;;;;;;:::i;:::-;;;;;;;;16411:1;16384:39;;16393:8;16384:39;;;16415:7;16384:39;;;;;;:::i;:::-;;;;;;;;16151:279;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:343:1:-;;109:65;125:48;166:6;125:48;:::i;:::-;109:65;:::i;:::-;100:74;;197:6;190:5;183:21;235:4;228:5;224:16;273:3;264:6;259:3;255:16;252:25;249:2;;;290:1;287;280:12;249:2;303:41;337:6;332:3;327;303:41;:::i;:::-;90:260;;;;;;:::o;356:139::-;;440:6;427:20;418:29;;456:33;483:5;456:33;:::i;:::-;408:87;;;;:::o;501:139::-;;585:6;572:20;563:29;;601:33;628:5;601:33;:::i;:::-;553:87;;;;:::o;659:351::-;;;776:3;769:4;761:6;757:17;753:27;743:2;;794:1;791;784:12;743:2;830:6;817:20;807:30;;860:18;852:6;849:30;846:2;;;892:1;889;882:12;846:2;929:4;921:6;917:17;905:29;;983:3;975:4;967:6;963:17;953:8;949:32;946:41;943:2;;;1000:1;997;990:12;943:2;733:277;;;;;:::o;1029:271::-;;1133:3;1126:4;1118:6;1114:17;1110:27;1100:2;;1151:1;1148;1141:12;1100:2;1191:6;1178:20;1216:78;1290:3;1282:6;1275:4;1267:6;1263:17;1216:78;:::i;:::-;1207:87;;1090:210;;;;;:::o;1306:139::-;;1390:6;1377:20;1368:29;;1406:33;1433:5;1406:33;:::i;:::-;1358:87;;;;:::o;1451:262::-;;1559:2;1547:9;1538:7;1534:23;1530:32;1527:2;;;1575:1;1572;1565:12;1527:2;1618:1;1643:53;1688:7;1679:6;1668:9;1664:22;1643:53;:::i;:::-;1633:63;;1589:117;1517:196;;;;:::o;1719:407::-;;;1844:2;1832:9;1823:7;1819:23;1815:32;1812:2;;;1860:1;1857;1850:12;1812:2;1903:1;1928:53;1973:7;1964:6;1953:9;1949:22;1928:53;:::i;:::-;1918:63;;1874:117;2030:2;2056:53;2101:7;2092:6;2081:9;2077:22;2056:53;:::i;:::-;2046:63;;2001:118;1802:324;;;;;:::o;2132:552::-;;;;2274:2;2262:9;2253:7;2249:23;2245:32;2242:2;;;2290:1;2287;2280:12;2242:2;2333:1;2358:53;2403:7;2394:6;2383:9;2379:22;2358:53;:::i;:::-;2348:63;;2304:117;2460:2;2486:53;2531:7;2522:6;2511:9;2507:22;2486:53;:::i;:::-;2476:63;;2431:118;2588:2;2614:53;2659:7;2650:6;2639:9;2635:22;2614:53;:::i;:::-;2604:63;;2559:118;2232:452;;;;;:::o;2690:407::-;;;2815:2;2803:9;2794:7;2790:23;2786:32;2783:2;;;2831:1;2828;2821:12;2783:2;2874:1;2899:53;2944:7;2935:6;2924:9;2920:22;2899:53;:::i;:::-;2889:63;;2845:117;3001:2;3027:53;3072:7;3063:6;3052:9;3048:22;3027:53;:::i;:::-;3017:63;;2972:118;2773:324;;;;;:::o;3103:262::-;;3211:2;3199:9;3190:7;3186:23;3182:32;3179:2;;;3227:1;3224;3217:12;3179:2;3270:1;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3241:117;3169:196;;;;:::o;3371:940::-;;;;;;3558:3;3546:9;3537:7;3533:23;3529:33;3526:2;;;3575:1;3572;3565:12;3526:2;3618:1;3643:53;3688:7;3679:6;3668:9;3664:22;3643:53;:::i;:::-;3633:63;;3589:117;3773:2;3762:9;3758:18;3745:32;3804:18;3796:6;3793:30;3790:2;;;3836:1;3833;3826:12;3790:2;3872:64;3928:7;3919:6;3908:9;3904:22;3872:64;:::i;:::-;3854:82;;;;3716:230;3985:2;4011:53;4056:7;4047:6;4036:9;4032:22;4011:53;:::i;:::-;4001:63;;3956:118;4141:2;4130:9;4126:18;4113:32;4172:18;4164:6;4161:30;4158:2;;;4204:1;4201;4194:12;4158:2;4232:62;4286:7;4277:6;4266:9;4262:22;4232:62;:::i;:::-;4222:72;;4084:220;3516:795;;;;;;;;:::o;4317:407::-;;;4442:2;4430:9;4421:7;4417:23;4413:32;4410:2;;;4458:1;4455;4448:12;4410:2;4501:1;4526:53;4571:7;4562:6;4551:9;4547:22;4526:53;:::i;:::-;4516:63;;4472:117;4628:2;4654:53;4699:7;4690:6;4679:9;4675:22;4654:53;:::i;:::-;4644:63;;4599:118;4400:324;;;;;:::o;4730:663::-;;;;4881:2;4869:9;4860:7;4856:23;4852:32;4849:2;;;4897:1;4894;4887:12;4849:2;4940:1;4965:53;5010:7;5001:6;4990:9;4986:22;4965:53;:::i;:::-;4955:63;;4911:117;5067:2;5093:53;5138:7;5129:6;5118:9;5114:22;5093:53;:::i;:::-;5083:63;;5038:118;5223:2;5212:9;5208:18;5195:32;5254:18;5246:6;5243:30;5240:2;;;5286:1;5283;5276:12;5240:2;5314:62;5368:7;5359:6;5348:9;5344:22;5314:62;:::i;:::-;5304:72;;5166:220;4839:554;;;;;:::o;5399:262::-;;5507:2;5495:9;5486:7;5482:23;5478:32;5475:2;;;5523:1;5520;5513:12;5475:2;5566:1;5591:53;5636:7;5627:6;5616:9;5612:22;5591:53;:::i;:::-;5581:63;;5537:117;5465:196;;;;:::o;5667:179::-;;5757:46;5799:3;5791:6;5757:46;:::i;:::-;5835:4;5830:3;5826:14;5812:28;;5747:99;;;;:::o;5852:118::-;5939:24;5957:5;5939:24;:::i;:::-;5934:3;5927:37;5917:53;;:::o;6006:732::-;;6154:54;6202:5;6154:54;:::i;:::-;6224:86;6303:6;6298:3;6224:86;:::i;:::-;6217:93;;6334:56;6384:5;6334:56;:::i;:::-;6413:7;6444:1;6429:284;6454:6;6451:1;6448:13;6429:284;;;6530:6;6524:13;6557:63;6616:3;6601:13;6557:63;:::i;:::-;6550:70;;6643:60;6696:6;6643:60;:::i;:::-;6633:70;;6489:224;6476:1;6473;6469:9;6464:14;;6429:284;;;6433:14;6729:3;6722:10;;6130:608;;;;;;;:::o;6744:109::-;6825:21;6840:5;6825:21;:::i;:::-;6820:3;6813:34;6803:50;;:::o;6859:118::-;6946:24;6964:5;6946:24;:::i;:::-;6941:3;6934:37;6924:53;;:::o;6983:157::-;7088:45;7108:24;7126:5;7108:24;:::i;:::-;7088:45;:::i;:::-;7083:3;7076:58;7066:74;;:::o;7168:301::-;;7285:70;7348:6;7343:3;7285:70;:::i;:::-;7278:77;;7365:43;7401:6;7396:3;7389:5;7365:43;:::i;:::-;7433:29;7455:6;7433:29;:::i;:::-;7428:3;7424:39;7417:46;;7268:201;;;;;:::o;7475:360::-;;7589:38;7621:5;7589:38;:::i;:::-;7643:70;7706:6;7701:3;7643:70;:::i;:::-;7636:77;;7722:52;7767:6;7762:3;7755:4;7748:5;7744:16;7722:52;:::i;:::-;7799:29;7821:6;7799:29;:::i;:::-;7794:3;7790:39;7783:46;;7565:270;;;;;:::o;7841:364::-;;7957:39;7990:5;7957:39;:::i;:::-;8012:71;8076:6;8071:3;8012:71;:::i;:::-;8005:78;;8092:52;8137:6;8132:3;8125:4;8118:5;8114:16;8092:52;:::i;:::-;8169:29;8191:6;8169:29;:::i;:::-;8164:3;8160:39;8153:46;;7933:272;;;;;:::o;8211:366::-;;8374:67;8438:2;8433:3;8374:67;:::i;:::-;8367:74;;8450:93;8539:3;8450:93;:::i;:::-;8568:2;8563:3;8559:12;8552:19;;8357:220;;;:::o;8583:366::-;;8746:67;8810:2;8805:3;8746:67;:::i;:::-;8739:74;;8822:93;8911:3;8822:93;:::i;:::-;8940:2;8935:3;8931:12;8924:19;;8729:220;;;:::o;8955:366::-;;9118:67;9182:2;9177:3;9118:67;:::i;:::-;9111:74;;9194:93;9283:3;9194:93;:::i;:::-;9312:2;9307:3;9303:12;9296:19;;9101:220;;;:::o;9327:366::-;;9490:67;9554:2;9549:3;9490:67;:::i;:::-;9483:74;;9566:93;9655:3;9566:93;:::i;:::-;9684:2;9679:3;9675:12;9668:19;;9473:220;;;:::o;9699:366::-;;9862:67;9926:2;9921:3;9862:67;:::i;:::-;9855:74;;9938:93;10027:3;9938:93;:::i;:::-;10056:2;10051:3;10047:12;10040:19;;9845:220;;;:::o;10071:366::-;;10234:67;10298:2;10293:3;10234:67;:::i;:::-;10227:74;;10310:93;10399:3;10310:93;:::i;:::-;10428:2;10423:3;10419:12;10412:19;;10217:220;;;:::o;10443:366::-;;10606:67;10670:2;10665:3;10606:67;:::i;:::-;10599:74;;10682:93;10771:3;10682:93;:::i;:::-;10800:2;10795:3;10791:12;10784:19;;10589:220;;;:::o;10815:366::-;;10978:67;11042:2;11037:3;10978:67;:::i;:::-;10971:74;;11054:93;11143:3;11054:93;:::i;:::-;11172:2;11167:3;11163:12;11156:19;;10961:220;;;:::o;11187:366::-;;11350:67;11414:2;11409:3;11350:67;:::i;:::-;11343:74;;11426:93;11515:3;11426:93;:::i;:::-;11544:2;11539:3;11535:12;11528:19;;11333:220;;;:::o;11559:366::-;;11722:67;11786:2;11781:3;11722:67;:::i;:::-;11715:74;;11798:93;11887:3;11798:93;:::i;:::-;11916:2;11911:3;11907:12;11900:19;;11705:220;;;:::o;11931:366::-;;12094:67;12158:2;12153:3;12094:67;:::i;:::-;12087:74;;12170:93;12259:3;12170:93;:::i;:::-;12288:2;12283:3;12279:12;12272:19;;12077:220;;;:::o;12303:108::-;12380:24;12398:5;12380:24;:::i;:::-;12375:3;12368:37;12358:53;;:::o;12417:118::-;12504:24;12522:5;12504:24;:::i;:::-;12499:3;12492:37;12482:53;;:::o;12541:157::-;12646:45;12666:24;12684:5;12666:24;:::i;:::-;12646:45;:::i;:::-;12641:3;12634:58;12624:74;;:::o;12704:112::-;12787:22;12803:5;12787:22;:::i;:::-;12782:3;12775:35;12765:51;;:::o;12822:397::-;;12977:75;13048:3;13039:6;12977:75;:::i;:::-;13077:2;13072:3;13068:12;13061:19;;13090:75;13161:3;13152:6;13090:75;:::i;:::-;13190:2;13185:3;13181:12;13174:19;;13210:3;13203:10;;12966:253;;;;;:::o;13225:222::-;;13356:2;13345:9;13341:18;13333:26;;13369:71;13437:1;13426:9;13422:17;13413:6;13369:71;:::i;:::-;13323:124;;;;:::o;13453:332::-;;13612:2;13601:9;13597:18;13589:26;;13625:71;13693:1;13682:9;13678:17;13669:6;13625:71;:::i;:::-;13706:72;13774:2;13763:9;13759:18;13750:6;13706:72;:::i;:::-;13579:206;;;;;:::o;13791:373::-;;13972:2;13961:9;13957:18;13949:26;;14021:9;14015:4;14011:20;14007:1;13996:9;13992:17;13985:47;14049:108;14152:4;14143:6;14049:108;:::i;:::-;14041:116;;13939:225;;;;:::o;14170:210::-;;14295:2;14284:9;14280:18;14272:26;;14308:65;14370:1;14359:9;14355:17;14346:6;14308:65;:::i;:::-;14262:118;;;;:::o;14386:1080::-;;14731:3;14720:9;14716:19;14708:27;;14745:71;14813:1;14802:9;14798:17;14789:6;14745:71;:::i;:::-;14826:72;14894:2;14883:9;14879:18;14870:6;14826:72;:::i;:::-;14945:9;14939:4;14935:20;14930:2;14919:9;14915:18;14908:48;14973:86;15054:4;15045:6;15037;14973:86;:::i;:::-;14965:94;;15069:72;15137:2;15126:9;15122:18;15113:6;15069:72;:::i;:::-;15151:73;15219:3;15208:9;15204:19;15195:6;15151:73;:::i;:::-;15272:9;15266:4;15262:20;15256:3;15245:9;15241:19;15234:49;15300:76;15371:4;15362:6;15300:76;:::i;:::-;15292:84;;15386:73;15454:3;15443:9;15439:19;15430:6;15386:73;:::i;:::-;14698:768;;;;;;;;;;;:::o;15472:309::-;;15621:2;15610:9;15606:18;15598:26;;15670:9;15664:4;15660:20;15656:1;15645:9;15641:17;15634:47;15698:76;15769:4;15760:6;15698:76;:::i;:::-;15690:84;;15588:193;;;;:::o;15787:313::-;;15938:2;15927:9;15923:18;15915:26;;15987:9;15981:4;15977:20;15973:1;15962:9;15958:17;15951:47;16015:78;16088:4;16079:6;16015:78;:::i;:::-;16007:86;;15905:195;;;;:::o;16106:419::-;;16310:2;16299:9;16295:18;16287:26;;16359:9;16353:4;16349:20;16345:1;16334:9;16330:17;16323:47;16387:131;16513:4;16387:131;:::i;:::-;16379:139;;16277:248;;;:::o;16531:419::-;;16735:2;16724:9;16720:18;16712:26;;16784:9;16778:4;16774:20;16770:1;16759:9;16755:17;16748:47;16812:131;16938:4;16812:131;:::i;:::-;16804:139;;16702:248;;;:::o;16956:419::-;;17160:2;17149:9;17145:18;17137:26;;17209:9;17203:4;17199:20;17195:1;17184:9;17180:17;17173:47;17237:131;17363:4;17237:131;:::i;:::-;17229:139;;17127:248;;;:::o;17381:419::-;;17585:2;17574:9;17570:18;17562:26;;17634:9;17628:4;17624:20;17620:1;17609:9;17605:17;17598:47;17662:131;17788:4;17662:131;:::i;:::-;17654:139;;17552:248;;;:::o;17806:419::-;;18010:2;17999:9;17995:18;17987:26;;18059:9;18053:4;18049:20;18045:1;18034:9;18030:17;18023:47;18087:131;18213:4;18087:131;:::i;:::-;18079:139;;17977:248;;;:::o;18231:419::-;;18435:2;18424:9;18420:18;18412:26;;18484:9;18478:4;18474:20;18470:1;18459:9;18455:17;18448:47;18512:131;18638:4;18512:131;:::i;:::-;18504:139;;18402:248;;;:::o;18656:419::-;;18860:2;18849:9;18845:18;18837:26;;18909:9;18903:4;18899:20;18895:1;18884:9;18880:17;18873:47;18937:131;19063:4;18937:131;:::i;:::-;18929:139;;18827:248;;;:::o;19081:419::-;;19285:2;19274:9;19270:18;19262:26;;19334:9;19328:4;19324:20;19320:1;19309:9;19305:17;19298:47;19362:131;19488:4;19362:131;:::i;:::-;19354:139;;19252:248;;;:::o;19506:419::-;;19710:2;19699:9;19695:18;19687:26;;19759:9;19753:4;19749:20;19745:1;19734:9;19730:17;19723:47;19787:131;19913:4;19787:131;:::i;:::-;19779:139;;19677:248;;;:::o;19931:419::-;;20135:2;20124:9;20120:18;20112:26;;20184:9;20178:4;20174:20;20170:1;20159:9;20155:17;20148:47;20212:131;20338:4;20212:131;:::i;:::-;20204:139;;20102:248;;;:::o;20356:419::-;;20560:2;20549:9;20545:18;20537:26;;20609:9;20603:4;20599:20;20595:1;20584:9;20580:17;20573:47;20637:131;20763:4;20637:131;:::i;:::-;20629:139;;20527:248;;;:::o;20781:222::-;;20912:2;20901:9;20897:18;20889:26;;20925:71;20993:1;20982:9;20978:17;20969:6;20925:71;:::i;:::-;20879:124;;;;:::o;21009:332::-;;21168:2;21157:9;21153:18;21145:26;;21181:71;21249:1;21238:9;21234:17;21225:6;21181:71;:::i;:::-;21262:72;21330:2;21319:9;21315:18;21306:6;21262:72;:::i;:::-;21135:206;;;;;:::o;21347:529::-;;21552:2;21541:9;21537:18;21529:26;;21565:71;21633:1;21622:9;21618:17;21609:6;21565:71;:::i;:::-;21646:72;21714:2;21703:9;21699:18;21690:6;21646:72;:::i;:::-;21765:9;21759:4;21755:20;21750:2;21739:9;21735:18;21728:48;21793:76;21864:4;21855:6;21793:76;:::i;:::-;21785:84;;21519:357;;;;;;:::o;21882:664::-;;22125:3;22114:9;22110:19;22102:27;;22139:71;22207:1;22196:9;22192:17;22183:6;22139:71;:::i;:::-;22220:72;22288:2;22277:9;22273:18;22264:6;22220:72;:::i;:::-;22302;22370:2;22359:9;22355:18;22346:6;22302:72;:::i;:::-;22384;22452:2;22441:9;22437:18;22428:6;22384:72;:::i;:::-;22466:73;22534:3;22523:9;22519:19;22510:6;22466:73;:::i;:::-;22092:454;;;;;;;;:::o;22552:214::-;;22679:2;22668:9;22664:18;22656:26;;22692:67;22756:1;22745:9;22741:17;22732:6;22692:67;:::i;:::-;22646:120;;;;:::o;22772:129::-;;22833:20;;:::i;:::-;22823:30;;22862:33;22890:4;22882:6;22862:33;:::i;:::-;22813:88;;;:::o;22907:75::-;;22973:2;22967:9;22957:19;;22947:35;:::o;22988:307::-;;23139:18;23131:6;23128:30;23125:2;;;23161:18;;:::i;:::-;23125:2;23199:29;23221:6;23199:29;:::i;:::-;23191:37;;23283:4;23277;23273:15;23265:23;;23054:241;;;:::o;23301:132::-;;23391:3;23383:11;;23421:4;23416:3;23412:14;23404:22;;23373:60;;;:::o;23439:114::-;;23540:5;23534:12;23524:22;;23513:40;;;:::o;23559:98::-;;23644:5;23638:12;23628:22;;23617:40;;;:::o;23663:99::-;;23749:5;23743:12;23733:22;;23722:40;;;:::o;23768:113::-;;23870:4;23865:3;23861:14;23853:22;;23843:38;;;:::o;23887:184::-;;24020:6;24015:3;24008:19;24060:4;24055:3;24051:14;24036:29;;23998:73;;;;:::o;24077:168::-;;24194:6;24189:3;24182:19;24234:4;24229:3;24225:14;24210:29;;24172:73;;;;:::o;24251:169::-;;24369:6;24364:3;24357:19;24409:4;24404:3;24400:14;24385:29;;24347:73;;;;:::o;24426:305::-;;24485:20;24503:1;24485:20;:::i;:::-;24480:25;;24519:20;24537:1;24519:20;:::i;:::-;24514:25;;24673:1;24605:66;24601:74;24598:1;24595:81;24592:2;;;24679:18;;:::i;:::-;24592:2;24723:1;24720;24716:9;24709:16;;24470:261;;;;:::o;24737:185::-;;24794:20;24812:1;24794:20;:::i;:::-;24789:25;;24828:20;24846:1;24828:20;:::i;:::-;24823:25;;24867:1;24857:2;;24872:18;;:::i;:::-;24857:2;24914:1;24911;24907:9;24902:14;;24779:143;;;;:::o;24928:348::-;;24991:20;25009:1;24991:20;:::i;:::-;24986:25;;25025:20;25043:1;25025:20;:::i;:::-;25020:25;;25213:1;25145:66;25141:74;25138:1;25135:81;25130:1;25123:9;25116:17;25112:105;25109:2;;;25220:18;;:::i;:::-;25109:2;25268:1;25265;25261:9;25250:20;;24976:300;;;;:::o;25282:191::-;;25342:20;25360:1;25342:20;:::i;:::-;25337:25;;25376:20;25394:1;25376:20;:::i;:::-;25371:25;;25415:1;25412;25409:8;25406:2;;;25420:18;;:::i;:::-;25406:2;25465:1;25462;25458:9;25450:17;;25327:146;;;;:::o;25479:96::-;;25545:24;25563:5;25545:24;:::i;:::-;25534:35;;25524:51;;;:::o;25581:90::-;;25658:5;25651:13;25644:21;25633:32;;25623:48;;;:::o;25677:77::-;;25743:5;25732:16;;25722:32;;;:::o;25760:126::-;;25837:42;25830:5;25826:54;25815:65;;25805:81;;;:::o;25892:77::-;;25958:5;25947:16;;25937:32;;;:::o;25975:86::-;;26050:4;26043:5;26039:16;26028:27;;26018:43;;;:::o;26067:154::-;26151:6;26146:3;26141;26128:30;26213:1;26204:6;26199:3;26195:16;26188:27;26118:103;;;:::o;26227:307::-;26295:1;26305:113;26319:6;26316:1;26313:13;26305:113;;;26404:1;26399:3;26395:11;26389:18;26385:1;26380:3;26376:11;26369:39;26341:2;26338:1;26334:10;26329:15;;26305:113;;;26436:6;26433:1;26430:13;26427:2;;;26516:1;26507:6;26502:3;26498:16;26491:27;26427:2;26276:258;;;;:::o;26540:320::-;;26621:1;26615:4;26611:12;26601:22;;26668:1;26662:4;26658:12;26689:18;26679:2;;26745:4;26737:6;26733:17;26723:27;;26679:2;26807;26799:6;26796:14;26776:18;26773:38;26770:2;;;26826:18;;:::i;:::-;26770:2;26591:269;;;;:::o;26866:281::-;26949:27;26971:4;26949:27;:::i;:::-;26941:6;26937:40;27079:6;27067:10;27064:22;27043:18;27031:10;27028:34;27025:62;27022:2;;;27090:18;;:::i;:::-;27022:2;27130:10;27126:2;27119:22;26909:238;;;:::o;27153:233::-;;27215:24;27233:5;27215:24;:::i;:::-;27206:33;;27261:66;27254:5;27251:77;27248:2;;;27331:18;;:::i;:::-;27248:2;27378:1;27371:5;27367:13;27360:20;;27196:190;;;:::o;27392:79::-;;27460:5;27449:16;;27439:32;;;:::o;27477:79::-;;27545:5;27534:16;;27524:32;;;:::o;27562:180::-;27610:77;27607:1;27600:88;27707:4;27704:1;27697:15;27731:4;27728:1;27721:15;27748:180;27796:77;27793:1;27786:88;27893:4;27890:1;27883:15;27917:4;27914:1;27907:15;27934:180;27982:77;27979:1;27972:88;28079:4;28076:1;28069:15;28103:4;28100:1;28093:15;28120:180;28168:77;28165:1;28158:88;28265:4;28262:1;28255:15;28289:4;28286:1;28279:15;28306:102;;28398:2;28394:7;28389:2;28382:5;28378:14;28374:28;28364:38;;28354:54;;;:::o;28414:222::-;28554:34;28550:1;28542:6;28538:14;28531:58;28623:5;28618:2;28610:6;28606:15;28599:30;28520:116;:::o;28642:221::-;28782:34;28778:1;28770:6;28766:14;28759:58;28851:4;28846:2;28838:6;28834:15;28827:29;28748:115;:::o;28869:179::-;29009:31;29005:1;28997:6;28993:14;28986:55;28975:73;:::o;29054:168::-;29194:20;29190:1;29182:6;29178:14;29171:44;29160:62;:::o;29228:173::-;29368:25;29364:1;29356:6;29352:14;29345:49;29334:67;:::o;29407:220::-;29547:34;29543:1;29535:6;29531:14;29524:58;29616:3;29611:2;29603:6;29599:15;29592:28;29513:114;:::o;29633:224::-;29773:34;29769:1;29761:6;29757:14;29750:58;29842:7;29837:2;29829:6;29825:15;29818:32;29739:118;:::o;29863:221::-;30003:34;29999:1;29991:6;29987:14;29980:58;30072:4;30067:2;30059:6;30055:15;30048:29;29969:115;:::o;30090:223::-;30230:34;30226:1;30218:6;30214:14;30207:58;30299:6;30294:2;30286:6;30282:15;30275:31;30196:117;:::o;30319:177::-;30459:29;30455:1;30447:6;30443:14;30436:53;30425:71;:::o;30502:181::-;30642:33;30638:1;30630:6;30626:14;30619:57;30608:75;:::o;30689:122::-;30762:24;30780:5;30762:24;:::i;:::-;30755:5;30752:35;30742:2;;30801:1;30798;30791:12;30742:2;30732:79;:::o;30817:122::-;30890:24;30908:5;30890:24;:::i;:::-;30883:5;30880:35;30870:2;;30929:1;30926;30919:12;30870:2;30860:79;:::o;30945:122::-;31018:24;31036:5;31018:24;:::i;:::-;31011:5;31008:35;30998:2;;31057:1;31054;31047:12;30998:2;30988:79;:::o" + "object": "608060405234801561001057600080fd5b50600436106102065760003560e01c806377b03e0d1161011a578063c6384071116100ad578063d9c51cd41161007c578063d9c51cd414610665578063dd62ed3e14610681578063e07c5486146106b1578063ef0234ad146106e1578063f25133f3146106fd57610206565b8063c6384071146105cb578063c979fe9f146105e9578063cb82cc8f14610619578063ce5e11bf1461063557610206565b8063a9059cbb116100e9578063a9059cbb14610545578063b86d1d6314610575578063bed9d86114610591578063c5958af91461059b57610206565b806377b03e0d146104bd5780638929f4c6146104ed57806395d89b411461050957806396426d971461052757610206565b8063313ce5671161019d57806364473df21161016c57806364473df2146103db578063699f200f1461040b57806369d43bd31461043b57806370a0823114610459578063733bdef01461048957610206565b8063313ce567146103535780635aa6e675146103715780635eaa9ced1461038f578063602bf227146103ab57610206565b80631f379acc116101d95780631f379acc146102a7578063217053c0146102c357806323b872dd146102f3578063248638e51461032357610206565b806306fdde031461020b578063091b50ff14610229578063095ea7b31461025957806318160ddd14610289575b600080fd5b61021361072d565b60405161022091906127b8565b60405180910390f35b610243600480360381019061023e919061228e565b6107bf565b6040516102509190612796565b60405180910390f35b610273600480360381019061026e9190612191565b61086c565b604051610280919061270a565b60405180910390f35b610291610883565b60405161029e919061293a565b60405180910390f35b6102c160048036038101906102bc919061228e565b61088d565b005b6102dd60048036038101906102d8919061228e565b610991565b6040516102ea91906126a4565b60405180910390f35b61030d60048036038101906103089190612142565b6109d3565b60405161031a919061270a565b60405180910390f35b61033d600480360381019061033891906121cd565b610a7d565b60405161034a91906126e8565b60405180910390f35b61035b610ae8565b60405161036891906129e6565b60405180910390f35b610379610aff565b60405161038691906126a4565b60405180910390f35b6103a960048036038101906103a491906121f6565b610b07565b005b6103c560048036038101906103c091906121cd565b610d7c565b6040516103d2919061293a565b60405180910390f35b6103f560048036038101906103f0919061228e565b610d94565b604051610402919061270a565b60405180910390f35b610425600480360381019061042091906121cd565b610dc3565b60405161043291906126a4565b60405180910390f35b610443610df6565b604051610450919061293a565b60405180910390f35b610473600480360381019061046e91906120dd565b610dfc565b604051610480919061293a565b60405180910390f35b6104a3600480360381019061049e91906120dd565b610e45565b6040516104b4959493929190612993565b60405180910390f35b6104d760048036038101906104d291906121cd565b610faf565b6040516104e4919061293a565b60405180910390f35b61050760048036038101906105029190612331565b610fcf565b005b6105116110d5565b60405161051e91906127b8565b60405180910390f35b61052f611167565b60405161053c919061293a565b60405180910390f35b61055f600480360381019061055a9190612191565b611173565b60405161056c919061270a565b60405180910390f35b61058f600480360381019061058a91906120dd565b61118a565b005b6105996111a0565b005b6105b560048036038101906105b0919061228e565b6112d2565b6040516105c29190612796565b60405180910390f35b6105d3611389565b6040516105e0919061293a565b60405180910390f35b61060360048036038101906105fe919061228e565b61138f565b604051610610919061293a565b60405180910390f35b610633600480360381019061062e9190612331565b6113c0565b005b61064f600480360381019061064a919061228e565b6114e4565b60405161065c919061293a565b60405180910390f35b61067f600480360381019061067a9190612331565b61157e565b005b61069b60048036038101906106969190612106565b611595565b6040516106a8919061293a565b60405180910390f35b6106cb60048036038101906106c6919061228e565b61161c565b6040516106d891906126a4565b60405180910390f35b6106fb60048036038101906106f691906122ca565b61166b565b005b6107176004803603810190610712919061228e565b611795565b604051610724919061293a565b60405180910390f35b6060600d805461073c90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461076890612c24565b80156107b55780601f1061078a576101008083540402835291602001916107b5565b820191906000526020600020905b81548152906001019060200180831161079857829003601f168201915b5050505050905090565b60066020528160005260406000206020528060005260406000206000915091505080546107eb90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461081790612c24565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b505050505081565b60006108793384846117c6565b6001905092915050565b6000600c54905090565b6040518060200160405280600081525060066000848152602001908152602001600020600083815260200190815260200160002090805190602001906108d4929190611ec3565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600b600081548092919061092490612c87565b9190505550600760008383604051602001610940929190612678565b604051602081830303815290604052805190602001208152602001908152602001600020600b5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109e0848484611991565b610a72843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6d9190612b4f565b6117c6565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610adc57602002820191906000526020600020905b815481526020019060010190808311610ac8575b50505050509050919050565b6000600f60009054906101000a900460ff16905090565b600030905090565b6004600086815260200190815260200160002080549050821480610b2b5750600082145b610b6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b619061285a565b60405180910390fd5b8080519060200120851480610b83575060648560001c11155b610bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb99061281a565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610bf5929190611f49565b50600460008681526020019081526020016000204290806001815401808255809150506001900390600052602060002001600090919091909150553360026000878152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610d2d90612c87565b91905055507f48e9e2c732ba278de6ac88a3a57a5c5ba13d3d8370e709b3b98333a57876ca9585428686868633604051610d6d9796959493929190612725565b60405180910390a15050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611059576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611050906128fa565b60405180910390fd5b428160000181905550818160020160008282546110769190612ac8565b92505081905550818160010160008282546110919190612b4f565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516110c99291906126bf565b60405180910390a15050565b6060600e80546110e490612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461111090612c24565b801561115d5780601f106111325761010080835404028352916020019161115d565b820191906000526020600020905b81548152906001019060200180831161114057829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000611180338484611991565b6001905092915050565b61119d81683635c9adc5dea00000611b87565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426111f79190612b4f565b1015611238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122f9061283a565b60405180910390fd5b600081600201541161127f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611276906128ba565b60405180910390fd5b61128e30338360020154611991565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec336040516112c791906126a4565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461130390612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461132f90612c24565b801561137c5780601f106113515761010080835404028352916020019161137c565b820191906000526020600020905b81548152906001019060200180831161135f57829003601f168201915b5050505050905092915050565b600b5481565b600760205281600052604060002081815481106113ab57600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160020154111561146e578181600201541061143b578181600201600082825461142f9190612b4f565b92505081905550611469565b61145533308360020154856114509190612b4f565b611cd0565b61145e57600080fd5b600081600201819055505b611483565b611479333084611cd0565b61148257600080fd5b5b428160000181905550818160010160008282546114a09190612ac8565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516114d89291906126bf565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061150f5750828111155b1561151e576000915050611578565b600460008581526020019081526020016000208381548110611569577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b611589333083611cd0565b61159257600080fd5b50565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b8080519060200120831480611684575060648360001c11155b6116c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ba9061281a565b60405180910390fd5b6116ce333084611991565b6002826116db9190612b1e565b91506116e73083611d7a565b81600a60008282546116f99190612ac8565b92505081905550816005600085815260200190815260200160002060008282546117239190612ac8565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff58460056000888152602001908152602001600020548560405161178893929190612955565b60405180910390a3505050565b600460205281600052604060002081815481106117b157600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611836576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182d906128da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189d906127fa565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611984919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f89061289a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a68906127da565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ac09190612b4f565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b169190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b7a919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611bf7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bee9061291a565b60405180910390fd5b80600c6000828254611c099190612ac8565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c5f9190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cc4919061293a565b60405180910390a35050565b6000611cdd848484611991565b611d6f843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d6a9190612b4f565b6117c6565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611de19061287a565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e399190612b4f565b9250508190555080600c6000828254611e529190612b4f565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611eb7919061293a565b60405180910390a35050565b828054611ecf90612c24565b90600052602060002090601f016020900481019282611ef15760008555611f38565b82601f10611f0a57805160ff1916838001178555611f38565b82800160010185558215611f38579182015b82811115611f37578251825591602001919060010190611f1c565b5b509050611f459190611fcf565b5090565b828054611f5590612c24565b90600052602060002090601f016020900481019282611f775760008555611fbe565b82601f10611f9057803560ff1916838001178555611fbe565b82800160010185558215611fbe579182015b82811115611fbd578235825591602001919060010190611fa2565b5b509050611fcb9190611fcf565b5090565b5b80821115611fe8576000816000905550600101611fd0565b5090565b6000611fff611ffa84612a26565b612a01565b90508281526020810184848401111561201757600080fd5b612022848285612be2565b509392505050565b60008135905061203981613058565b92915050565b60008135905061204e8161306f565b92915050565b60008083601f84011261206657600080fd5b8235905067ffffffffffffffff81111561207f57600080fd5b60208301915083600182028301111561209757600080fd5b9250929050565b600082601f8301126120af57600080fd5b81356120bf848260208601611fec565b91505092915050565b6000813590506120d781613086565b92915050565b6000602082840312156120ef57600080fd5b60006120fd8482850161202a565b91505092915050565b6000806040838503121561211957600080fd5b60006121278582860161202a565b92505060206121388582860161202a565b9150509250929050565b60008060006060848603121561215757600080fd5b60006121658682870161202a565b93505060206121768682870161202a565b9250506040612187868287016120c8565b9150509250925092565b600080604083850312156121a457600080fd5b60006121b28582860161202a565b92505060206121c3858286016120c8565b9150509250929050565b6000602082840312156121df57600080fd5b60006121ed8482850161203f565b91505092915050565b60008060008060006080868803121561220e57600080fd5b600061221c8882890161203f565b955050602086013567ffffffffffffffff81111561223957600080fd5b61224588828901612054565b94509450506040612258888289016120c8565b925050606086013567ffffffffffffffff81111561227557600080fd5b6122818882890161209e565b9150509295509295909350565b600080604083850312156122a157600080fd5b60006122af8582860161203f565b92505060206122c0858286016120c8565b9150509250929050565b6000806000606084860312156122df57600080fd5b60006122ed8682870161203f565b93505060206122fe868287016120c8565b925050604084013567ffffffffffffffff81111561231b57600080fd5b6123278682870161209e565b9150509250925092565b60006020828403121561234357600080fd5b6000612351848285016120c8565b91505092915050565b60006123668383612634565b60208301905092915050565b61237b81612b83565b82525050565b600061238c82612a67565b6123968185612a95565b93506123a183612a57565b8060005b838110156123d25781516123b9888261235a565b97506123c483612a88565b9250506001810190506123a5565b5085935050505092915050565b6123e881612b95565b82525050565b6123f781612ba1565b82525050565b61240e61240982612ba1565b612cd0565b82525050565b60006124208385612aa6565b935061242d838584612be2565b61243683612da0565b840190509392505050565b600061244c82612a72565b6124568185612aa6565b9350612466818560208601612bf1565b61246f81612da0565b840191505092915050565b600061248582612a7d565b61248f8185612ab7565b935061249f818560208601612bf1565b6124a881612da0565b840191505092915050565b60006124c0602383612ab7565b91506124cb82612db1565b604082019050919050565b60006124e3602283612ab7565b91506124ee82612e00565b604082019050919050565b6000612506601d83612ab7565b915061251182612e4f565b602082019050919050565b6000612529601283612ab7565b915061253482612e78565b602082019050919050565b600061254c602083612ab7565b915061255782612ea1565b602082019050919050565b600061256f602183612ab7565b915061257a82612eca565b604082019050919050565b6000612592602583612ab7565b915061259d82612f19565b604082019050919050565b60006125b5602283612ab7565b91506125c082612f68565b604082019050919050565b60006125d8602483612ab7565b91506125e382612fb7565b604082019050919050565b60006125fb601b83612ab7565b915061260682613006565b602082019050919050565b600061261e601f83612ab7565b91506126298261302f565b602082019050919050565b61263d81612bcb565b82525050565b61264c81612bcb565b82525050565b61266361265e82612bcb565b612cda565b82525050565b61267281612bd5565b82525050565b600061268482856123fd565b6020820191506126948284612652565b6020820191508190509392505050565b60006020820190506126b96000830184612372565b92915050565b60006040820190506126d46000830185612372565b6126e16020830184612643565b9392505050565b600060208201905081810360008301526127028184612381565b905092915050565b600060208201905061271f60008301846123df565b92915050565b600060c08201905061273a600083018a6123ee565b6127476020830189612643565b818103604083015261275a818789612414565b90506127696060830186612643565b818103608083015261277b8185612441565b905061278a60a0830184612372565b98975050505050505050565b600060208201905081810360008301526127b08184612441565b905092915050565b600060208201905081810360008301526127d2818461247a565b905092915050565b600060208201905081810360008301526127f3816124b3565b9050919050565b60006020820190508181036000830152612813816124d6565b9050919050565b60006020820190508181036000830152612833816124f9565b9050919050565b600060208201905081810360008301526128538161251c565b9050919050565b600060208201905081810360008301526128738161253f565b9050919050565b6000602082019050818103600083015261289381612562565b9050919050565b600060208201905081810360008301526128b381612585565b9050919050565b600060208201905081810360008301526128d3816125a8565b9050919050565b600060208201905081810360008301526128f3816125cb565b9050919050565b60006020820190508181036000830152612913816125ee565b9050919050565b6000602082019050818103600083015261293381612611565b9050919050565b600060208201905061294f6000830184612643565b92915050565b600060608201905061296a6000830186612643565b6129776020830185612643565b81810360408301526129898184612441565b9050949350505050565b600060a0820190506129a86000830188612643565b6129b56020830187612643565b6129c26040830186612643565b6129cf6060830185612643565b6129dc6080830184612643565b9695505050505050565b60006020820190506129fb6000830184612669565b92915050565b6000612a0b612a1c565b9050612a178282612c56565b919050565b6000604051905090565b600067ffffffffffffffff821115612a4157612a40612d71565b5b612a4a82612da0565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ad382612bcb565b9150612ade83612bcb565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612b1357612b12612ce4565b5b828201905092915050565b6000612b2982612bcb565b9150612b3483612bcb565b925082612b4457612b43612d13565b5b828204905092915050565b6000612b5a82612bcb565b9150612b6583612bcb565b925082821015612b7857612b77612ce4565b5b828203905092915050565b6000612b8e82612bab565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612c0f578082015181840152602081019050612bf4565b83811115612c1e576000848401525b50505050565b60006002820490506001821680612c3c57607f821691505b60208210811415612c5057612c4f612d42565b5b50919050565b612c5f82612da0565b810181811067ffffffffffffffff82111715612c7e57612c7d612d71565b5b80604052505050565b6000612c9282612bcb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612cc557612cc4612ce4565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e6365206d757374206d617463682074696d657374616d7020696e646578600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61306181612b83565b811461306c57600080fd5b50565b61307881612ba1565b811461308357600080fd5b50565b61308f81612bcb565b811461309a57600080fd5b5056fea2646970667358221220090b234664dbe1c38c0c1d19e1d45e53151e48d7c1e094b69a54bbc66548b7e664736f6c63430008030033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x206 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x77B03E0D GT PUSH2 0x11A JUMPI DUP1 PUSH4 0xC6384071 GT PUSH2 0xAD JUMPI DUP1 PUSH4 0xD9C51CD4 GT PUSH2 0x7C JUMPI DUP1 PUSH4 0xD9C51CD4 EQ PUSH2 0x665 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x681 JUMPI DUP1 PUSH4 0xE07C5486 EQ PUSH2 0x6B1 JUMPI DUP1 PUSH4 0xEF0234AD EQ PUSH2 0x6E1 JUMPI DUP1 PUSH4 0xF25133F3 EQ PUSH2 0x6FD JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xC6384071 EQ PUSH2 0x5CB JUMPI DUP1 PUSH4 0xC979FE9F EQ PUSH2 0x5E9 JUMPI DUP1 PUSH4 0xCB82CC8F EQ PUSH2 0x619 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x635 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0xA9059CBB GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x545 JUMPI DUP1 PUSH4 0xB86D1D63 EQ PUSH2 0x575 JUMPI DUP1 PUSH4 0xBED9D861 EQ PUSH2 0x591 JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x59B JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x4BD JUMPI DUP1 PUSH4 0x8929F4C6 EQ PUSH2 0x4ED JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x509 JUMPI DUP1 PUSH4 0x96426D97 EQ PUSH2 0x527 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x19D JUMPI DUP1 PUSH4 0x64473DF2 GT PUSH2 0x16C JUMPI DUP1 PUSH4 0x64473DF2 EQ PUSH2 0x3DB JUMPI DUP1 PUSH4 0x699F200F EQ PUSH2 0x40B JUMPI DUP1 PUSH4 0x69D43BD3 EQ PUSH2 0x43B JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x459 JUMPI DUP1 PUSH4 0x733BDEF0 EQ PUSH2 0x489 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 EQ PUSH2 0x353 JUMPI DUP1 PUSH4 0x5AA6E675 EQ PUSH2 0x371 JUMPI DUP1 PUSH4 0x5EAA9CED EQ PUSH2 0x38F JUMPI DUP1 PUSH4 0x602BF227 EQ PUSH2 0x3AB JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x1F379ACC GT PUSH2 0x1D9 JUMPI DUP1 PUSH4 0x1F379ACC EQ PUSH2 0x2A7 JUMPI DUP1 PUSH4 0x217053C0 EQ PUSH2 0x2C3 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0x248638E5 EQ PUSH2 0x323 JUMPI PUSH2 0x206 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x20B JUMPI DUP1 PUSH4 0x91B50FF EQ PUSH2 0x229 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x259 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x289 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x213 PUSH2 0x72D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x220 SWAP2 SWAP1 PUSH2 0x27B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x243 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23E SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x7BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x250 SWAP2 SWAP1 PUSH2 0x2796 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x273 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x26E SWAP2 SWAP1 PUSH2 0x2191 JUMP JUMPDEST PUSH2 0x86C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x291 PUSH2 0x883 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29E SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2BC SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x88D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2DD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D8 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x991 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x30D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x308 SWAP2 SWAP1 PUSH2 0x2142 JUMP JUMPDEST PUSH2 0x9D3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x31A SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x33D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x338 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xA7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x34A SWAP2 SWAP1 PUSH2 0x26E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x35B PUSH2 0xAE8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x368 SWAP2 SWAP1 PUSH2 0x29E6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x379 PUSH2 0xAFF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x386 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3A4 SWAP2 SWAP1 PUSH2 0x21F6 JUMP JUMPDEST PUSH2 0xB07 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3C5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3C0 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xD7C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3D2 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3F5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3F0 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0xD94 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x402 SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x425 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x420 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xDC3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x432 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x443 PUSH2 0xDF6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x450 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x473 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x46E SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH2 0xDFC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x480 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4A3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x49E SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH2 0xE45 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4B4 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2993 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4D7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4D2 SWAP2 SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH2 0xFAF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4E4 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x507 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x502 SWAP2 SWAP1 PUSH2 0x2331 JUMP JUMPDEST PUSH2 0xFCF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x511 PUSH2 0x10D5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x51E SWAP2 SWAP1 PUSH2 0x27B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x52F PUSH2 0x1167 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x53C SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x55F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x55A SWAP2 SWAP1 PUSH2 0x2191 JUMP JUMPDEST PUSH2 0x1173 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x56C SWAP2 SWAP1 PUSH2 0x270A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x58F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x58A SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH2 0x118A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x599 PUSH2 0x11A0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5B5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5B0 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x12D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5C2 SWAP2 SWAP1 PUSH2 0x2796 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5D3 PUSH2 0x1389 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5E0 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x603 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5FE SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x138F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x610 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x633 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x62E SWAP2 SWAP1 PUSH2 0x2331 JUMP JUMPDEST PUSH2 0x13C0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x64F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x64A SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x14E4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x65C SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x67F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x67A SWAP2 SWAP1 PUSH2 0x2331 JUMP JUMPDEST PUSH2 0x157E JUMP JUMPDEST STOP JUMPDEST PUSH2 0x69B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x696 SWAP2 SWAP1 PUSH2 0x2106 JUMP JUMPDEST PUSH2 0x1595 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A8 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6CB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6C6 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x161C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6D8 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6FB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6F6 SWAP2 SWAP1 PUSH2 0x22CA JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x717 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x712 SWAP2 SWAP1 PUSH2 0x228E JUMP JUMPDEST PUSH2 0x1795 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x724 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0xD DUP1 SLOAD PUSH2 0x73C SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x768 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x7B5 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x78A JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x7B5 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x798 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP POP DUP1 SLOAD PUSH2 0x7EB SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x817 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x864 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x839 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x864 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x847 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x879 CALLER DUP5 DUP5 PUSH2 0x17C6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x8D4 SWAP3 SWAP2 SWAP1 PUSH2 0x1EC3 JUMP JUMPDEST POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xB PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0x924 SWAP1 PUSH2 0x2C87 JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x940 SWAP3 SWAP2 SWAP1 PUSH2 0x2678 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB SLOAD SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9E0 DUP5 DUP5 DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH2 0xA72 DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xA6D SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST PUSH2 0x17C6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x7 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0xADC JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0xAC8 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xF PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 ADDRESS SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP DUP3 EQ DUP1 PUSH2 0xB2B JUMPI POP PUSH1 0x0 DUP3 EQ JUMPDEST PUSH2 0xB6A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB61 SWAP1 PUSH2 0x285A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 EQ DUP1 PUSH2 0xB83 JUMPI POP PUSH1 0x64 DUP6 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0xBC2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBB9 SWAP1 PUSH2 0x281A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 DUP4 PUSH1 0x6 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP2 SWAP1 PUSH2 0xBF5 SWAP3 SWAP2 SWAP1 PUSH2 0x1F49 JUMP JUMPDEST POP PUSH1 0x4 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 TIMESTAMP SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE CALLER PUSH1 0x2 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 TIMESTAMP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP TIMESTAMP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP2 SLOAD DUP1 SWAP3 SWAP2 SWAP1 PUSH2 0xD2D SWAP1 PUSH2 0x2C87 JUMP JUMPDEST SWAP2 SWAP1 POP SSTORE POP PUSH32 0x48E9E2C732BA278DE6AC88A3A57A5C5BA13D3D8370E709B3B98333A57876CA95 DUP6 TIMESTAMP DUP7 DUP7 DUP7 DUP7 CALLER PUSH1 0x40 MLOAD PUSH2 0xD6D SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2725 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x5 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SWAP2 POP SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 MSTORE DUP1 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0xA SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP11 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH1 0x3 PUSH1 0x0 DUP12 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP5 POP SWAP2 SWAP4 SWAP6 SWAP1 SWAP3 SWAP5 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x1 ADD SLOAD LT ISZERO PUSH2 0x1059 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1050 SWAP1 PUSH2 0x28FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1076 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1091 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0x3D8D9DF4BD0172DF32E557FA48E96435CD7F2CAC06AAFFACFAEE608E6F7898EF CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x10C9 SWAP3 SWAP2 SWAP1 PUSH2 0x26BF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xE DUP1 SLOAD PUSH2 0x10E4 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1110 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x115D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1132 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x115D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1140 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0x6F05B59D3B20000 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1180 CALLER DUP5 DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x119D DUP2 PUSH9 0x3635C9ADC5DEA00000 PUSH2 0x1B87 JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH3 0x93A80 DUP2 PUSH1 0x0 ADD SLOAD TIMESTAMP PUSH2 0x11F7 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST LT ISZERO PUSH2 0x1238 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x122F SWAP1 PUSH2 0x283A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT PUSH2 0x127F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1276 SWAP1 PUSH2 0x28BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x128E ADDRESS CALLER DUP4 PUSH1 0x2 ADD SLOAD PUSH2 0x1991 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH32 0x4A7934670BD8304E7DA22378BE1368F7C4FEF17C5AEE81804BEDA8638FE428EC CALLER PUSH1 0x40 MLOAD PUSH2 0x12C7 SWAP2 SWAP1 PUSH2 0x26A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH2 0x1303 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x132F SWAP1 PUSH2 0x2C24 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x137C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1351 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x137C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x135F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x13AB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 ADD SLOAD GT ISZERO PUSH2 0x146E JUMPI DUP2 DUP2 PUSH1 0x2 ADD SLOAD LT PUSH2 0x143B JUMPI DUP2 DUP2 PUSH1 0x2 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x142F SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x1469 JUMP JUMPDEST PUSH2 0x1455 CALLER ADDRESS DUP4 PUSH1 0x2 ADD SLOAD DUP6 PUSH2 0x1450 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST PUSH2 0x1CD0 JUMP JUMPDEST PUSH2 0x145E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP JUMPDEST PUSH2 0x1483 JUMP JUMPDEST PUSH2 0x1479 CALLER ADDRESS DUP5 PUSH2 0x1CD0 JUMP JUMPDEST PUSH2 0x1482 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST JUMPDEST TIMESTAMP DUP2 PUSH1 0x0 ADD DUP2 SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x1 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x14A0 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH32 0xA96C2CCE65119A2170D1711A6E82F18F2006448828483BA7545E595476543647 CALLER DUP4 PUSH1 0x40 MLOAD PUSH2 0x14D8 SWAP3 SWAP2 SWAP1 PUSH2 0x26BF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP2 EQ DUP1 PUSH2 0x150F JUMPI POP DUP3 DUP2 GT ISZERO JUMPDEST ISZERO PUSH2 0x151E JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1578 JUMP JUMPDEST PUSH1 0x4 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x1569 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD SLOAD SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1589 CALLER ADDRESS DUP4 PUSH2 0x1CD0 JUMP JUMPDEST PUSH2 0x1592 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP4 EQ DUP1 PUSH2 0x1684 JUMPI POP PUSH1 0x64 DUP4 PUSH1 0x0 SHR GT ISZERO JUMPDEST PUSH2 0x16C3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16BA SWAP1 PUSH2 0x281A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x16CE CALLER ADDRESS DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH2 0x16DB SWAP2 SWAP1 PUSH2 0x2B1E JUMP JUMPDEST SWAP2 POP PUSH2 0x16E7 ADDRESS DUP4 PUSH2 0x1D7A JUMP JUMPDEST DUP2 PUSH1 0xA PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x16F9 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1723 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xD951D408A0F5057DA5C25B826FB5CE403D56542962B6AC6994DBC6D5432FBFF5 DUP5 PUSH1 0x5 PUSH1 0x0 DUP9 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD DUP6 PUSH1 0x40 MLOAD PUSH2 0x1788 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2955 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x4 PUSH1 0x20 MSTORE DUP2 PUSH1 0x0 MSTORE PUSH1 0x40 PUSH1 0x0 KECCAK256 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x17B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP2 POP SWAP2 POP POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1836 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x182D SWAP1 PUSH2 0x28DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x18A6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x189D SWAP1 PUSH2 0x27FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x8 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1984 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1A01 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19F8 SWAP1 PUSH2 0x289A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1A71 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A68 SWAP1 PUSH2 0x27DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1AC0 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1B16 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1B7A SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1BF7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1BEE SWAP1 PUSH2 0x291A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0xC PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C09 SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C5F SWAP2 SWAP1 PUSH2 0x2AC8 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1CC4 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1CDD DUP5 DUP5 DUP5 PUSH2 0x1991 JUMP JUMPDEST PUSH2 0x1D6F DUP5 CALLER DUP5 PUSH1 0x8 PUSH1 0x0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x1D6A SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST PUSH2 0x17C6 JUMP JUMPDEST PUSH1 0x1 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1DEA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1DE1 SWAP1 PUSH2 0x287A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x9 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1E39 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0xC PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1E52 SWAP2 SWAP1 PUSH2 0x2B4F JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1EB7 SWAP2 SWAP1 PUSH2 0x293A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1ECF SWAP1 PUSH2 0x2C24 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1EF1 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1F38 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1F0A JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1F38 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1F38 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1F37 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1F1C JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1F45 SWAP2 SWAP1 PUSH2 0x1FCF JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1F55 SWAP1 PUSH2 0x2C24 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1F77 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1FBE JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1F90 JUMPI DUP1 CALLDATALOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1FBE JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1FBE JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1FBD JUMPI DUP3 CALLDATALOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1FA2 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1FCB SWAP2 SWAP1 PUSH2 0x1FCF JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1FE8 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1FD0 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FFF PUSH2 0x1FFA DUP5 PUSH2 0x2A26 JUMP JUMPDEST PUSH2 0x2A01 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2017 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2022 DUP5 DUP3 DUP6 PUSH2 0x2BE2 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2039 DUP2 PUSH2 0x3058 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x204E DUP2 PUSH2 0x306F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2066 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x207F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x2097 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x20AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x20BF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1FEC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x20D7 DUP2 PUSH2 0x3086 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x20FD DUP5 DUP3 DUP6 ADD PUSH2 0x202A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2119 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2127 DUP6 DUP3 DUP7 ADD PUSH2 0x202A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2138 DUP6 DUP3 DUP7 ADD PUSH2 0x202A JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2157 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2165 DUP7 DUP3 DUP8 ADD PUSH2 0x202A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2176 DUP7 DUP3 DUP8 ADD PUSH2 0x202A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2187 DUP7 DUP3 DUP8 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x21A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x21B2 DUP6 DUP3 DUP7 ADD PUSH2 0x202A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x21C3 DUP6 DUP3 DUP7 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x21ED DUP5 DUP3 DUP6 ADD PUSH2 0x203F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x220E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x221C DUP9 DUP3 DUP10 ADD PUSH2 0x203F JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2239 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2245 DUP9 DUP3 DUP10 ADD PUSH2 0x2054 JUMP JUMPDEST SWAP5 POP SWAP5 POP POP PUSH1 0x40 PUSH2 0x2258 DUP9 DUP3 DUP10 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2275 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2281 DUP9 DUP3 DUP10 ADD PUSH2 0x209E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x22A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22AF DUP6 DUP3 DUP7 ADD PUSH2 0x203F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x22C0 DUP6 DUP3 DUP7 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x22DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x22ED DUP7 DUP3 DUP8 ADD PUSH2 0x203F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x22FE DUP7 DUP3 DUP8 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x231B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2327 DUP7 DUP3 DUP8 ADD PUSH2 0x209E JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2343 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2351 DUP5 DUP3 DUP6 ADD PUSH2 0x20C8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2366 DUP4 DUP4 PUSH2 0x2634 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x237B DUP2 PUSH2 0x2B83 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x238C DUP3 PUSH2 0x2A67 JUMP JUMPDEST PUSH2 0x2396 DUP2 DUP6 PUSH2 0x2A95 JUMP JUMPDEST SWAP4 POP PUSH2 0x23A1 DUP4 PUSH2 0x2A57 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x23D2 JUMPI DUP2 MLOAD PUSH2 0x23B9 DUP9 DUP3 PUSH2 0x235A JUMP JUMPDEST SWAP8 POP PUSH2 0x23C4 DUP4 PUSH2 0x2A88 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x23A5 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x23E8 DUP2 PUSH2 0x2B95 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x23F7 DUP2 PUSH2 0x2BA1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x240E PUSH2 0x2409 DUP3 PUSH2 0x2BA1 JUMP JUMPDEST PUSH2 0x2CD0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2420 DUP4 DUP6 PUSH2 0x2AA6 JUMP JUMPDEST SWAP4 POP PUSH2 0x242D DUP4 DUP6 DUP5 PUSH2 0x2BE2 JUMP JUMPDEST PUSH2 0x2436 DUP4 PUSH2 0x2DA0 JUMP JUMPDEST DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x244C DUP3 PUSH2 0x2A72 JUMP JUMPDEST PUSH2 0x2456 DUP2 DUP6 PUSH2 0x2AA6 JUMP JUMPDEST SWAP4 POP PUSH2 0x2466 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BF1 JUMP JUMPDEST PUSH2 0x246F DUP2 PUSH2 0x2DA0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2485 DUP3 PUSH2 0x2A7D JUMP JUMPDEST PUSH2 0x248F DUP2 DUP6 PUSH2 0x2AB7 JUMP JUMPDEST SWAP4 POP PUSH2 0x249F DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BF1 JUMP JUMPDEST PUSH2 0x24A8 DUP2 PUSH2 0x2DA0 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24C0 PUSH1 0x23 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x24CB DUP3 PUSH2 0x2DB1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24E3 PUSH1 0x22 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x24EE DUP3 PUSH2 0x2E00 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2506 PUSH1 0x1D DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2511 DUP3 PUSH2 0x2E4F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2529 PUSH1 0x12 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2534 DUP3 PUSH2 0x2E78 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x254C PUSH1 0x20 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2557 DUP3 PUSH2 0x2EA1 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x256F PUSH1 0x21 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x257A DUP3 PUSH2 0x2ECA JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2592 PUSH1 0x25 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x259D DUP3 PUSH2 0x2F19 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25B5 PUSH1 0x22 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x25C0 DUP3 PUSH2 0x2F68 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25D8 PUSH1 0x24 DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x25E3 DUP3 PUSH2 0x2FB7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25FB PUSH1 0x1B DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2606 DUP3 PUSH2 0x3006 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x261E PUSH1 0x1F DUP4 PUSH2 0x2AB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x2629 DUP3 PUSH2 0x302F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x263D DUP2 PUSH2 0x2BCB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x264C DUP2 PUSH2 0x2BCB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2663 PUSH2 0x265E DUP3 PUSH2 0x2BCB JUMP JUMPDEST PUSH2 0x2CDA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2672 DUP2 PUSH2 0x2BD5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2684 DUP3 DUP6 PUSH2 0x23FD JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x2694 DUP3 DUP5 PUSH2 0x2652 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x26B9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2372 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x26D4 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2372 JUMP JUMPDEST PUSH2 0x26E1 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x2643 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2702 DUP2 DUP5 PUSH2 0x2381 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x271F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x23DF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0x273A PUSH1 0x0 DUP4 ADD DUP11 PUSH2 0x23EE JUMP JUMPDEST PUSH2 0x2747 PUSH1 0x20 DUP4 ADD DUP10 PUSH2 0x2643 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x275A DUP2 DUP8 DUP10 PUSH2 0x2414 JUMP JUMPDEST SWAP1 POP PUSH2 0x2769 PUSH1 0x60 DUP4 ADD DUP7 PUSH2 0x2643 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x80 DUP4 ADD MSTORE PUSH2 0x277B DUP2 DUP6 PUSH2 0x2441 JUMP JUMPDEST SWAP1 POP PUSH2 0x278A PUSH1 0xA0 DUP4 ADD DUP5 PUSH2 0x2372 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x27B0 DUP2 DUP5 PUSH2 0x2441 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x27D2 DUP2 DUP5 PUSH2 0x247A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x27F3 DUP2 PUSH2 0x24B3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2813 DUP2 PUSH2 0x24D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2833 DUP2 PUSH2 0x24F9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2853 DUP2 PUSH2 0x251C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2873 DUP2 PUSH2 0x253F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2893 DUP2 PUSH2 0x2562 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28B3 DUP2 PUSH2 0x2585 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28D3 DUP2 PUSH2 0x25A8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28F3 DUP2 PUSH2 0x25CB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2913 DUP2 PUSH2 0x25EE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2933 DUP2 PUSH2 0x2611 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x294F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2643 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x296A PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x2977 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x2643 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x2989 DUP2 DUP5 PUSH2 0x2441 JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x29A8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29B5 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29C2 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29CF PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2643 JUMP JUMPDEST PUSH2 0x29DC PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2643 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x29FB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2669 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A0B PUSH2 0x2A1C JUMP JUMPDEST SWAP1 POP PUSH2 0x2A17 DUP3 DUP3 PUSH2 0x2C56 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2A41 JUMPI PUSH2 0x2A40 PUSH2 0x2D71 JUMP JUMPDEST JUMPDEST PUSH2 0x2A4A DUP3 PUSH2 0x2DA0 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AD3 DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH2 0x2ADE DUP4 PUSH2 0x2BCB JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2B13 JUMPI PUSH2 0x2B12 PUSH2 0x2CE4 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B29 DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH2 0x2B34 DUP4 PUSH2 0x2BCB JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2B44 JUMPI PUSH2 0x2B43 PUSH2 0x2D13 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B5A DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH2 0x2B65 DUP4 PUSH2 0x2BCB JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2B78 JUMPI PUSH2 0x2B77 PUSH2 0x2CE4 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B8E DUP3 PUSH2 0x2BAB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2C0F JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2BF4 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2C1E JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2C3C JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2C50 JUMPI PUSH2 0x2C4F PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2C5F DUP3 PUSH2 0x2DA0 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2C7E JUMPI PUSH2 0x2C7D PUSH2 0x2D71 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C92 DUP3 PUSH2 0x2BCB JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2CC5 JUMPI PUSH2 0x2CC4 PUSH2 0x2CE4 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6964206D7573742062652068617368206F662062797465732064617461000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x372064617973206469646E277420706173730000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x6E6F6E6365206D757374206D617463682074696D657374616D7020696E646578 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x7265706F72746572206E6F74206C6F636B656420666F72207769746864726177 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616C000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x696E73756666696369656E74207374616B65642062616C616E63650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3061 DUP2 PUSH2 0x2B83 JUMP JUMPDEST DUP2 EQ PUSH2 0x306C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3078 DUP2 PUSH2 0x2BA1 JUMP JUMPDEST DUP2 EQ PUSH2 0x3083 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x308F DUP2 PUSH2 0x2BCB JUMP JUMPDEST DUP2 EQ PUSH2 0x309A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MULMOD SIGNEXTEND 0x23 CHAINID PUSH5 0xDBE1C38C0C SAR NOT 0xE1 0xD4 0x5E MSTORE8 ISZERO 0x1E 0x48 0xD7 0xC1 0xE0 SWAP5 0xB6 SWAP11 SLOAD 0xBB 0xC6 PUSH6 0x48B7E664736F PUSH13 0x63430008030033000000000000 ", + "sourceMap": "57:17195:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13366:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1308:59;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3248:187;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14174:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3623:305;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;966:74;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7053:342;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12903:146;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11733:81;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13168:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4554:920;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1203:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;866:62;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;816:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1771:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11445:110;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10326:497;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;12035:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8533:431;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13971:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1647:46;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6576:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4076:81;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9027:461;;;:::i;:::-;;13687:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1844:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1405:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7530:847;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12418:283;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2805:128;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11114:180;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9724:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5712:618;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1150:47;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13366:81;13403:13;13435:5;13428:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13366:81;:::o;1308:59::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3248:187::-;3348:4;3368:39;3377:10;3389:8;3399:7;3368:8;:39::i;:::-;3424:4;3417:11;;3248:187;;;;:::o;14174:89::-;14218:7;14244:12;;14237:19;;14174:89;:::o;3623:305::-;3733:9;;;;;;;;;;;;3702:6;:16;3709:8;3702:16;;;;;;;;;;;:28;3719:10;3702:28;;;;;;;;;;;:40;;;;;;;;;;;;:::i;:::-;;3787:4;3752:10;:20;3763:8;3752:20;;;;;;;;;;;:32;3773:10;3752:32;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;3801:9;;:11;;;;;;;;;:::i;:::-;;;;;;3822:10;:61;3860:8;3870:10;3843:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3833:49;;;;;;3822:61;;;;;;;;;;;3902:9;;3822:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3623:305;;:::o;966:74::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7053:342::-;7183:4;7199:39;7209:7;7218:10;7230:7;7199:9;:39::i;:::-;7248:119;7270:7;7291:10;7350:7;7315:11;:20;7327:7;7315:20;;;;;;;;;;;;;;;:32;7336:10;7315:32;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;7248:8;:119::i;:::-;7384:4;7377:11;;7053:342;;;;;:::o;12903:146::-;12986:16;13025:10;:17;13036:5;13025:17;;;;;;;;;;;13018:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12903:146;;;:::o;11733:81::-;11774:5;11798:9;;;;;;;;;;;11791:16;;11733:81;:::o;13168:89::-;13212:7;13245:4;13230:20;;13168:89;:::o;4554:920::-;4745:10;:20;4756:8;4745:20;;;;;;;;;;;:27;;;;4735:6;:37;:52;;;;4786:1;4776:6;:11;4735:52;4714:131;;;;;;;;;;;;:::i;:::-;;;;;;;;;4898:10;4888:21;;;;;;4876:8;:33;:61;;;;4934:3;4921:8;4913:17;;:24;;4876:61;4855:137;;;;;;;;;;;;:::i;:::-;;;;;;;;;5038:6;;5002;:16;5009:8;5002:16;;;;;;;;;;;:33;5019:15;5002:33;;;;;;;;;;;:42;;;;;;;:::i;:::-;;5054:10;:20;5065:8;5054:20;;;;;;;;;;;5080:15;5054:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5155:10;5106:19;:29;5126:8;5106:29;;;;;;;;;;;:46;5136:15;5106:46;;;;;;;;;;;;:59;;;;;;;;;;;;;;;;;;5225:15;5175:13;:25;5189:10;5175:25;;;;;;;;;;;;;;;:47;;:65;;;;5250:13;:25;5264:10;5250:25;;;;;;;;;;;;;;;:42;;;:44;;;;;;;;;:::i;:::-;;;;;;5309:158;5332:8;5354:15;5383:6;;5403;5423:10;5447;5309:158;;;;;;;;;;;;:::i;:::-;;;;;;;;4554:920;;;;;:::o;1203:39::-;;;;;;;;;;;;;;;;;:::o;866:62::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;816:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;1771:29::-;;;;:::o;11445:110::-;11503:7;11529:9;:19;11539:8;11529:19;;;;;;;;;;;;;;;;11522:26;;11445:110;;;:::o;10326:497::-;10426:7;10447;10468;10489;10510;10563:13;:22;10577:7;10563:22;;;;;;;;;;;;;;;:32;;;10609:13;:22;10623:7;10609:22;;;;;;;;;;;;;;;:36;;;10659:13;:22;10673:7;10659:22;;;;;;;;;;;;;;;:36;;;10709:13;:22;10723:7;10709:22;;;;;;;;;;;;;;;:44;;;10767:13;:22;10781:7;10767:22;;;;;;;;;;;;;;;:39;;;10542:274;;;;;;;;;;10326:497;;;;;;;:::o;12035:162::-;12133:7;12163:10;:20;12174:8;12163:20;;;;;;;;;;;:27;;;;12156:34;;12035:162;;;:::o;8533:431::-;8601:25;8629:13;:25;8643:10;8629:25;;;;;;;;;;;;;;;8601:53;;8710:7;8685;:21;;;:32;;8664:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;8800:15;8780:7;:17;;:35;;;;8850:7;8825;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;8892:7;8867;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;8914:43;8937:10;8949:7;8914:43;;;;;;;:::i;:::-;;;;;;;;8533:431;;:::o;13971:85::-;14010:13;14042:7;14035:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13971:85;:::o;1647:46::-;1689:4;1647:46;:::o;6576:193::-;6679:4;6699:42;6709:10;6721;6733:7;6699:9;:42::i;:::-;6758:4;6751:11;;6576:193;;;;:::o;4076:81::-;4126:24;4132:5;4139:10;4126:5;:24::i;:::-;4076:81;:::o;9027:461::-;9071:20;9094:13;:25;9108:10;9094:25;;;;;;;;;;;;;;;9071:48;;9240:6;9224:2;:12;;;9206:15;:30;;;;:::i;:::-;:40;;9198:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9306:1;9287:2;:16;;;:20;9279:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9356:54;9374:4;9381:10;9393:2;:16;;;9356:9;:54::i;:::-;9439:1;9420:2;:16;;:20;;;;9455:26;9470:10;9455:26;;;;;;:::i;:::-;;;;;;;;9027:461;:::o;13687:175::-;13792:12;13827:6;:16;13834:8;13827:16;;;;;;;;;;;:28;13844:10;13827:28;;;;;;;;;;;13820:35;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13687:175;;;;:::o;1844:24::-;;;;:::o;1405:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7530:847::-;7588:25;7616:13;:25;7630:10;7616:25;;;;;;;;;;;;;;;7588:53;;7679:1;7655:7;:21;;;:25;7651:543;;;7725:7;7700;:21;;;:32;7696:399;;7777:7;7752;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;7696:399;;;7852:167;7891:10;7935:4;7976:7;:21;;;7966:7;:31;;;;:::i;:::-;7852:13;:167::i;:::-;7823:214;;;;;;8079:1;8055:7;:21;;:25;;;;7696:399;7651:543;;;8133:49;8147:10;8167:4;8174:7;8133:13;:49::i;:::-;8125:58;;;;;;7651:543;8223:15;8203:7;:17;;:35;;;;8318:7;8293;:21;;;:32;;;;;;;:::i;:::-;;;;;;;;8340:30;8350:10;8362:7;8340:30;;;;;;;:::i;:::-;;;;;;;;7530:847;;:::o;12418:283::-;12536:7;12559:11;12573:10;:20;12584:8;12573:20;;;;;;;;;;;:27;;;;12559:41;;12621:1;12614:3;:8;:25;;;;12633:6;12626:3;:13;;12614:25;12610:39;;;12648:1;12641:8;;;;;12610:39;12666:10;:20;12677:8;12666:20;;;;;;;;;;;12687:6;12666:28;;;;;;;;;;;;;;;;;;;;;;;;12659:35;;;12418:283;;;;;:::o;2805:128::-;2876:49;2890:10;2910:4;2917:7;2876:13;:49::i;:::-;2868:58;;;;;;2805:128;:::o;11114:180::-;11228:7;11258:11;:19;11270:6;11258:19;;;;;;;;;;;;;;;:29;11278:8;11258:29;;;;;;;;;;;;;;;;11251:36;;11114:180;;;;:::o;9724:195::-;9841:7;9871:19;:29;9891:8;9871:29;;;;;;;;;;;:41;9901:10;9871:41;;;;;;;;;;;;;;;;;;;;;9864:48;;9724:195;;;;:::o;5712:618::-;5882:10;5872:21;;;;;;5860:8;:33;:61;;;;5918:3;5905:8;5897:17;;:24;;5860:61;5839:137;;;;;;;;;;;;:::i;:::-;;;;;;;;;5986:45;5996:10;6016:4;6023:7;5986:9;:45::i;:::-;6061:1;6051:7;:11;;;;:::i;:::-;6041:21;;6072:29;6086:4;6093:7;6072:5;:29::i;:::-;6129:7;6111:14;;:25;;;;;;;:::i;:::-;;;;;;;;6164:7;6146:4;:14;6151:8;6146:14;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;6232:8;6208:10;6186:137;;;6254:7;6275:4;:14;6280:8;6275:14;;;;;;;;;;;;6303:10;6186:137;;;;;;;;:::i;:::-;;;;;;;;5712:618;;;:::o;1150:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14565:380::-;14717:1;14699:20;;:6;:20;;;;14691:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;14798:1;14778:22;;:8;:22;;;;14770:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;14881:7;14849:11;:19;14861:6;14849:19;;;;;;;;;;;;;;;:29;14869:8;14849:29;;;;;;;;;;;;;;;:39;;;;14920:8;14903:35;;14912:6;14903:35;;;14930:7;14903:35;;;;;;:::i;:::-;;;;;;;;14565:380;;;:::o;16132:458::-;16289:1;16270:21;;:7;:21;;;;16262:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;16386:1;16364:24;;:10;:24;;;;16343:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;16481:7;16459:9;:18;16469:7;16459:18;;;;;;;;;;;;;;;;:29;;;;;;;:::i;:::-;;;;;;;;16523:7;16498:9;:21;16508:10;16498:21;;;;;;;;;;;;;;;;:32;;;;;;;:::i;:::-;;;;;;;;16563:10;16545:38;;16554:7;16545:38;;;16575:7;16545:38;;;;;;:::i;:::-;;;;;;;;16132:458;;;:::o;15615:277::-;15720:1;15700:22;;:8;:22;;;;15692:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;15784:7;15768:12;;:23;;;;;;;:::i;:::-;;;;;;;;15824:7;15801:9;:19;15811:8;15801:19;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;15867:8;15846:39;;15863:1;15846:39;;;15877:7;15846:39;;;;;;:::i;:::-;;;;;;;;15615:277;;:::o;16902:348::-;17035:4;17051:39;17061:7;17070:10;17082:7;17051:9;:39::i;:::-;17100:122;17122:7;17143:10;17205:7;17167:11;:20;17179:7;17167:20;;;;;;;;;;;;;;;:35;17196:4;17167:35;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;17100:8;:122::i;:::-;17239:4;17232:11;;16902:348;;;;;:::o;15134:279::-;15239:1;15219:22;;:8;:22;;;;15211:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15312:7;15289:9;:19;15299:8;15289:19;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;15345:7;15329:12;;:23;;;;;;;:::i;:::-;;;;;;;;15394:1;15367:39;;15376:8;15367:39;;;15398:7;15367:39;;;;;;:::i;:::-;;;;;;;;15134:279;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:343:1:-;;109:65;125:48;166:6;125:48;:::i;:::-;109:65;:::i;:::-;100:74;;197:6;190:5;183:21;235:4;228:5;224:16;273:3;264:6;259:3;255:16;252:25;249:2;;;290:1;287;280:12;249:2;303:41;337:6;332:3;327;303:41;:::i;:::-;90:260;;;;;;:::o;356:139::-;;440:6;427:20;418:29;;456:33;483:5;456:33;:::i;:::-;408:87;;;;:::o;501:139::-;;585:6;572:20;563:29;;601:33;628:5;601:33;:::i;:::-;553:87;;;;:::o;659:351::-;;;776:3;769:4;761:6;757:17;753:27;743:2;;794:1;791;784:12;743:2;830:6;817:20;807:30;;860:18;852:6;849:30;846:2;;;892:1;889;882:12;846:2;929:4;921:6;917:17;905:29;;983:3;975:4;967:6;963:17;953:8;949:32;946:41;943:2;;;1000:1;997;990:12;943:2;733:277;;;;;:::o;1029:271::-;;1133:3;1126:4;1118:6;1114:17;1110:27;1100:2;;1151:1;1148;1141:12;1100:2;1191:6;1178:20;1216:78;1290:3;1282:6;1275:4;1267:6;1263:17;1216:78;:::i;:::-;1207:87;;1090:210;;;;;:::o;1306:139::-;;1390:6;1377:20;1368:29;;1406:33;1433:5;1406:33;:::i;:::-;1358:87;;;;:::o;1451:262::-;;1559:2;1547:9;1538:7;1534:23;1530:32;1527:2;;;1575:1;1572;1565:12;1527:2;1618:1;1643:53;1688:7;1679:6;1668:9;1664:22;1643:53;:::i;:::-;1633:63;;1589:117;1517:196;;;;:::o;1719:407::-;;;1844:2;1832:9;1823:7;1819:23;1815:32;1812:2;;;1860:1;1857;1850:12;1812:2;1903:1;1928:53;1973:7;1964:6;1953:9;1949:22;1928:53;:::i;:::-;1918:63;;1874:117;2030:2;2056:53;2101:7;2092:6;2081:9;2077:22;2056:53;:::i;:::-;2046:63;;2001:118;1802:324;;;;;:::o;2132:552::-;;;;2274:2;2262:9;2253:7;2249:23;2245:32;2242:2;;;2290:1;2287;2280:12;2242:2;2333:1;2358:53;2403:7;2394:6;2383:9;2379:22;2358:53;:::i;:::-;2348:63;;2304:117;2460:2;2486:53;2531:7;2522:6;2511:9;2507:22;2486:53;:::i;:::-;2476:63;;2431:118;2588:2;2614:53;2659:7;2650:6;2639:9;2635:22;2614:53;:::i;:::-;2604:63;;2559:118;2232:452;;;;;:::o;2690:407::-;;;2815:2;2803:9;2794:7;2790:23;2786:32;2783:2;;;2831:1;2828;2821:12;2783:2;2874:1;2899:53;2944:7;2935:6;2924:9;2920:22;2899:53;:::i;:::-;2889:63;;2845:117;3001:2;3027:53;3072:7;3063:6;3052:9;3048:22;3027:53;:::i;:::-;3017:63;;2972:118;2773:324;;;;;:::o;3103:262::-;;3211:2;3199:9;3190:7;3186:23;3182:32;3179:2;;;3227:1;3224;3217:12;3179:2;3270:1;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3241:117;3169:196;;;;:::o;3371:940::-;;;;;;3558:3;3546:9;3537:7;3533:23;3529:33;3526:2;;;3575:1;3572;3565:12;3526:2;3618:1;3643:53;3688:7;3679:6;3668:9;3664:22;3643:53;:::i;:::-;3633:63;;3589:117;3773:2;3762:9;3758:18;3745:32;3804:18;3796:6;3793:30;3790:2;;;3836:1;3833;3826:12;3790:2;3872:64;3928:7;3919:6;3908:9;3904:22;3872:64;:::i;:::-;3854:82;;;;3716:230;3985:2;4011:53;4056:7;4047:6;4036:9;4032:22;4011:53;:::i;:::-;4001:63;;3956:118;4141:2;4130:9;4126:18;4113:32;4172:18;4164:6;4161:30;4158:2;;;4204:1;4201;4194:12;4158:2;4232:62;4286:7;4277:6;4266:9;4262:22;4232:62;:::i;:::-;4222:72;;4084:220;3516:795;;;;;;;;:::o;4317:407::-;;;4442:2;4430:9;4421:7;4417:23;4413:32;4410:2;;;4458:1;4455;4448:12;4410:2;4501:1;4526:53;4571:7;4562:6;4551:9;4547:22;4526:53;:::i;:::-;4516:63;;4472:117;4628:2;4654:53;4699:7;4690:6;4679:9;4675:22;4654:53;:::i;:::-;4644:63;;4599:118;4400:324;;;;;:::o;4730:663::-;;;;4881:2;4869:9;4860:7;4856:23;4852:32;4849:2;;;4897:1;4894;4887:12;4849:2;4940:1;4965:53;5010:7;5001:6;4990:9;4986:22;4965:53;:::i;:::-;4955:63;;4911:117;5067:2;5093:53;5138:7;5129:6;5118:9;5114:22;5093:53;:::i;:::-;5083:63;;5038:118;5223:2;5212:9;5208:18;5195:32;5254:18;5246:6;5243:30;5240:2;;;5286:1;5283;5276:12;5240:2;5314:62;5368:7;5359:6;5348:9;5344:22;5314:62;:::i;:::-;5304:72;;5166:220;4839:554;;;;;:::o;5399:262::-;;5507:2;5495:9;5486:7;5482:23;5478:32;5475:2;;;5523:1;5520;5513:12;5475:2;5566:1;5591:53;5636:7;5627:6;5616:9;5612:22;5591:53;:::i;:::-;5581:63;;5537:117;5465:196;;;;:::o;5667:179::-;;5757:46;5799:3;5791:6;5757:46;:::i;:::-;5835:4;5830:3;5826:14;5812:28;;5747:99;;;;:::o;5852:118::-;5939:24;5957:5;5939:24;:::i;:::-;5934:3;5927:37;5917:53;;:::o;6006:732::-;;6154:54;6202:5;6154:54;:::i;:::-;6224:86;6303:6;6298:3;6224:86;:::i;:::-;6217:93;;6334:56;6384:5;6334:56;:::i;:::-;6413:7;6444:1;6429:284;6454:6;6451:1;6448:13;6429:284;;;6530:6;6524:13;6557:63;6616:3;6601:13;6557:63;:::i;:::-;6550:70;;6643:60;6696:6;6643:60;:::i;:::-;6633:70;;6489:224;6476:1;6473;6469:9;6464:14;;6429:284;;;6433:14;6729:3;6722:10;;6130:608;;;;;;;:::o;6744:109::-;6825:21;6840:5;6825:21;:::i;:::-;6820:3;6813:34;6803:50;;:::o;6859:118::-;6946:24;6964:5;6946:24;:::i;:::-;6941:3;6934:37;6924:53;;:::o;6983:157::-;7088:45;7108:24;7126:5;7108:24;:::i;:::-;7088:45;:::i;:::-;7083:3;7076:58;7066:74;;:::o;7168:301::-;;7285:70;7348:6;7343:3;7285:70;:::i;:::-;7278:77;;7365:43;7401:6;7396:3;7389:5;7365:43;:::i;:::-;7433:29;7455:6;7433:29;:::i;:::-;7428:3;7424:39;7417:46;;7268:201;;;;;:::o;7475:360::-;;7589:38;7621:5;7589:38;:::i;:::-;7643:70;7706:6;7701:3;7643:70;:::i;:::-;7636:77;;7722:52;7767:6;7762:3;7755:4;7748:5;7744:16;7722:52;:::i;:::-;7799:29;7821:6;7799:29;:::i;:::-;7794:3;7790:39;7783:46;;7565:270;;;;;:::o;7841:364::-;;7957:39;7990:5;7957:39;:::i;:::-;8012:71;8076:6;8071:3;8012:71;:::i;:::-;8005:78;;8092:52;8137:6;8132:3;8125:4;8118:5;8114:16;8092:52;:::i;:::-;8169:29;8191:6;8169:29;:::i;:::-;8164:3;8160:39;8153:46;;7933:272;;;;;:::o;8211:366::-;;8374:67;8438:2;8433:3;8374:67;:::i;:::-;8367:74;;8450:93;8539:3;8450:93;:::i;:::-;8568:2;8563:3;8559:12;8552:19;;8357:220;;;:::o;8583:366::-;;8746:67;8810:2;8805:3;8746:67;:::i;:::-;8739:74;;8822:93;8911:3;8822:93;:::i;:::-;8940:2;8935:3;8931:12;8924:19;;8729:220;;;:::o;8955:366::-;;9118:67;9182:2;9177:3;9118:67;:::i;:::-;9111:74;;9194:93;9283:3;9194:93;:::i;:::-;9312:2;9307:3;9303:12;9296:19;;9101:220;;;:::o;9327:366::-;;9490:67;9554:2;9549:3;9490:67;:::i;:::-;9483:74;;9566:93;9655:3;9566:93;:::i;:::-;9684:2;9679:3;9675:12;9668:19;;9473:220;;;:::o;9699:366::-;;9862:67;9926:2;9921:3;9862:67;:::i;:::-;9855:74;;9938:93;10027:3;9938:93;:::i;:::-;10056:2;10051:3;10047:12;10040:19;;9845:220;;;:::o;10071:366::-;;10234:67;10298:2;10293:3;10234:67;:::i;:::-;10227:74;;10310:93;10399:3;10310:93;:::i;:::-;10428:2;10423:3;10419:12;10412:19;;10217:220;;;:::o;10443:366::-;;10606:67;10670:2;10665:3;10606:67;:::i;:::-;10599:74;;10682:93;10771:3;10682:93;:::i;:::-;10800:2;10795:3;10791:12;10784:19;;10589:220;;;:::o;10815:366::-;;10978:67;11042:2;11037:3;10978:67;:::i;:::-;10971:74;;11054:93;11143:3;11054:93;:::i;:::-;11172:2;11167:3;11163:12;11156:19;;10961:220;;;:::o;11187:366::-;;11350:67;11414:2;11409:3;11350:67;:::i;:::-;11343:74;;11426:93;11515:3;11426:93;:::i;:::-;11544:2;11539:3;11535:12;11528:19;;11333:220;;;:::o;11559:366::-;;11722:67;11786:2;11781:3;11722:67;:::i;:::-;11715:74;;11798:93;11887:3;11798:93;:::i;:::-;11916:2;11911:3;11907:12;11900:19;;11705:220;;;:::o;11931:366::-;;12094:67;12158:2;12153:3;12094:67;:::i;:::-;12087:74;;12170:93;12259:3;12170:93;:::i;:::-;12288:2;12283:3;12279:12;12272:19;;12077:220;;;:::o;12303:108::-;12380:24;12398:5;12380:24;:::i;:::-;12375:3;12368:37;12358:53;;:::o;12417:118::-;12504:24;12522:5;12504:24;:::i;:::-;12499:3;12492:37;12482:53;;:::o;12541:157::-;12646:45;12666:24;12684:5;12666:24;:::i;:::-;12646:45;:::i;:::-;12641:3;12634:58;12624:74;;:::o;12704:112::-;12787:22;12803:5;12787:22;:::i;:::-;12782:3;12775:35;12765:51;;:::o;12822:397::-;;12977:75;13048:3;13039:6;12977:75;:::i;:::-;13077:2;13072:3;13068:12;13061:19;;13090:75;13161:3;13152:6;13090:75;:::i;:::-;13190:2;13185:3;13181:12;13174:19;;13210:3;13203:10;;12966:253;;;;;:::o;13225:222::-;;13356:2;13345:9;13341:18;13333:26;;13369:71;13437:1;13426:9;13422:17;13413:6;13369:71;:::i;:::-;13323:124;;;;:::o;13453:332::-;;13612:2;13601:9;13597:18;13589:26;;13625:71;13693:1;13682:9;13678:17;13669:6;13625:71;:::i;:::-;13706:72;13774:2;13763:9;13759:18;13750:6;13706:72;:::i;:::-;13579:206;;;;;:::o;13791:373::-;;13972:2;13961:9;13957:18;13949:26;;14021:9;14015:4;14011:20;14007:1;13996:9;13992:17;13985:47;14049:108;14152:4;14143:6;14049:108;:::i;:::-;14041:116;;13939:225;;;;:::o;14170:210::-;;14295:2;14284:9;14280:18;14272:26;;14308:65;14370:1;14359:9;14355:17;14346:6;14308:65;:::i;:::-;14262:118;;;;:::o;14386:969::-;;14703:3;14692:9;14688:19;14680:27;;14717:71;14785:1;14774:9;14770:17;14761:6;14717:71;:::i;:::-;14798:72;14866:2;14855:9;14851:18;14842:6;14798:72;:::i;:::-;14917:9;14911:4;14907:20;14902:2;14891:9;14887:18;14880:48;14945:86;15026:4;15017:6;15009;14945:86;:::i;:::-;14937:94;;15041:72;15109:2;15098:9;15094:18;15085:6;15041:72;:::i;:::-;15161:9;15155:4;15151:20;15145:3;15134:9;15130:19;15123:49;15189:76;15260:4;15251:6;15189:76;:::i;:::-;15181:84;;15275:73;15343:3;15332:9;15328:19;15319:6;15275:73;:::i;:::-;14670:685;;;;;;;;;;:::o;15361:309::-;;15510:2;15499:9;15495:18;15487:26;;15559:9;15553:4;15549:20;15545:1;15534:9;15530:17;15523:47;15587:76;15658:4;15649:6;15587:76;:::i;:::-;15579:84;;15477:193;;;;:::o;15676:313::-;;15827:2;15816:9;15812:18;15804:26;;15876:9;15870:4;15866:20;15862:1;15851:9;15847:17;15840:47;15904:78;15977:4;15968:6;15904:78;:::i;:::-;15896:86;;15794:195;;;;:::o;15995:419::-;;16199:2;16188:9;16184:18;16176:26;;16248:9;16242:4;16238:20;16234:1;16223:9;16219:17;16212:47;16276:131;16402:4;16276:131;:::i;:::-;16268:139;;16166:248;;;:::o;16420:419::-;;16624:2;16613:9;16609:18;16601:26;;16673:9;16667:4;16663:20;16659:1;16648:9;16644:17;16637:47;16701:131;16827:4;16701:131;:::i;:::-;16693:139;;16591:248;;;:::o;16845:419::-;;17049:2;17038:9;17034:18;17026:26;;17098:9;17092:4;17088:20;17084:1;17073:9;17069:17;17062:47;17126:131;17252:4;17126:131;:::i;:::-;17118:139;;17016:248;;;:::o;17270:419::-;;17474:2;17463:9;17459:18;17451:26;;17523:9;17517:4;17513:20;17509:1;17498:9;17494:17;17487:47;17551:131;17677:4;17551:131;:::i;:::-;17543:139;;17441:248;;;:::o;17695:419::-;;17899:2;17888:9;17884:18;17876:26;;17948:9;17942:4;17938:20;17934:1;17923:9;17919:17;17912:47;17976:131;18102:4;17976:131;:::i;:::-;17968:139;;17866:248;;;:::o;18120:419::-;;18324:2;18313:9;18309:18;18301:26;;18373:9;18367:4;18363:20;18359:1;18348:9;18344:17;18337:47;18401:131;18527:4;18401:131;:::i;:::-;18393:139;;18291:248;;;:::o;18545:419::-;;18749:2;18738:9;18734:18;18726:26;;18798:9;18792:4;18788:20;18784:1;18773:9;18769:17;18762:47;18826:131;18952:4;18826:131;:::i;:::-;18818:139;;18716:248;;;:::o;18970:419::-;;19174:2;19163:9;19159:18;19151:26;;19223:9;19217:4;19213:20;19209:1;19198:9;19194:17;19187:47;19251:131;19377:4;19251:131;:::i;:::-;19243:139;;19141:248;;;:::o;19395:419::-;;19599:2;19588:9;19584:18;19576:26;;19648:9;19642:4;19638:20;19634:1;19623:9;19619:17;19612:47;19676:131;19802:4;19676:131;:::i;:::-;19668:139;;19566:248;;;:::o;19820:419::-;;20024:2;20013:9;20009:18;20001:26;;20073:9;20067:4;20063:20;20059:1;20048:9;20044:17;20037:47;20101:131;20227:4;20101:131;:::i;:::-;20093:139;;19991:248;;;:::o;20245:419::-;;20449:2;20438:9;20434:18;20426:26;;20498:9;20492:4;20488:20;20484:1;20473:9;20469:17;20462:47;20526:131;20652:4;20526:131;:::i;:::-;20518:139;;20416:248;;;:::o;20670:222::-;;20801:2;20790:9;20786:18;20778:26;;20814:71;20882:1;20871:9;20867:17;20858:6;20814:71;:::i;:::-;20768:124;;;;:::o;20898:529::-;;21103:2;21092:9;21088:18;21080:26;;21116:71;21184:1;21173:9;21169:17;21160:6;21116:71;:::i;:::-;21197:72;21265:2;21254:9;21250:18;21241:6;21197:72;:::i;:::-;21316:9;21310:4;21306:20;21301:2;21290:9;21286:18;21279:48;21344:76;21415:4;21406:6;21344:76;:::i;:::-;21336:84;;21070:357;;;;;;:::o;21433:664::-;;21676:3;21665:9;21661:19;21653:27;;21690:71;21758:1;21747:9;21743:17;21734:6;21690:71;:::i;:::-;21771:72;21839:2;21828:9;21824:18;21815:6;21771:72;:::i;:::-;21853;21921:2;21910:9;21906:18;21897:6;21853:72;:::i;:::-;21935;22003:2;21992:9;21988:18;21979:6;21935:72;:::i;:::-;22017:73;22085:3;22074:9;22070:19;22061:6;22017:73;:::i;:::-;21643:454;;;;;;;;:::o;22103:214::-;;22230:2;22219:9;22215:18;22207:26;;22243:67;22307:1;22296:9;22292:17;22283:6;22243:67;:::i;:::-;22197:120;;;;:::o;22323:129::-;;22384:20;;:::i;:::-;22374:30;;22413:33;22441:4;22433:6;22413:33;:::i;:::-;22364:88;;;:::o;22458:75::-;;22524:2;22518:9;22508:19;;22498:35;:::o;22539:307::-;;22690:18;22682:6;22679:30;22676:2;;;22712:18;;:::i;:::-;22676:2;22750:29;22772:6;22750:29;:::i;:::-;22742:37;;22834:4;22828;22824:15;22816:23;;22605:241;;;:::o;22852:132::-;;22942:3;22934:11;;22972:4;22967:3;22963:14;22955:22;;22924:60;;;:::o;22990:114::-;;23091:5;23085:12;23075:22;;23064:40;;;:::o;23110:98::-;;23195:5;23189:12;23179:22;;23168:40;;;:::o;23214:99::-;;23300:5;23294:12;23284:22;;23273:40;;;:::o;23319:113::-;;23421:4;23416:3;23412:14;23404:22;;23394:38;;;:::o;23438:184::-;;23571:6;23566:3;23559:19;23611:4;23606:3;23602:14;23587:29;;23549:73;;;;:::o;23628:168::-;;23745:6;23740:3;23733:19;23785:4;23780:3;23776:14;23761:29;;23723:73;;;;:::o;23802:169::-;;23920:6;23915:3;23908:19;23960:4;23955:3;23951:14;23936:29;;23898:73;;;;:::o;23977:305::-;;24036:20;24054:1;24036:20;:::i;:::-;24031:25;;24070:20;24088:1;24070:20;:::i;:::-;24065:25;;24224:1;24156:66;24152:74;24149:1;24146:81;24143:2;;;24230:18;;:::i;:::-;24143:2;24274:1;24271;24267:9;24260:16;;24021:261;;;;:::o;24288:185::-;;24345:20;24363:1;24345:20;:::i;:::-;24340:25;;24379:20;24397:1;24379:20;:::i;:::-;24374:25;;24418:1;24408:2;;24423:18;;:::i;:::-;24408:2;24465:1;24462;24458:9;24453:14;;24330:143;;;;:::o;24479:191::-;;24539:20;24557:1;24539:20;:::i;:::-;24534:25;;24573:20;24591:1;24573:20;:::i;:::-;24568:25;;24612:1;24609;24606:8;24603:2;;;24617:18;;:::i;:::-;24603:2;24662:1;24659;24655:9;24647:17;;24524:146;;;;:::o;24676:96::-;;24742:24;24760:5;24742:24;:::i;:::-;24731:35;;24721:51;;;:::o;24778:90::-;;24855:5;24848:13;24841:21;24830:32;;24820:48;;;:::o;24874:77::-;;24940:5;24929:16;;24919:32;;;:::o;24957:126::-;;25034:42;25027:5;25023:54;25012:65;;25002:81;;;:::o;25089:77::-;;25155:5;25144:16;;25134:32;;;:::o;25172:86::-;;25247:4;25240:5;25236:16;25225:27;;25215:43;;;:::o;25264:154::-;25348:6;25343:3;25338;25325:30;25410:1;25401:6;25396:3;25392:16;25385:27;25315:103;;;:::o;25424:307::-;25492:1;25502:113;25516:6;25513:1;25510:13;25502:113;;;25601:1;25596:3;25592:11;25586:18;25582:1;25577:3;25573:11;25566:39;25538:2;25535:1;25531:10;25526:15;;25502:113;;;25633:6;25630:1;25627:13;25624:2;;;25713:1;25704:6;25699:3;25695:16;25688:27;25624:2;25473:258;;;;:::o;25737:320::-;;25818:1;25812:4;25808:12;25798:22;;25865:1;25859:4;25855:12;25886:18;25876:2;;25942:4;25934:6;25930:17;25920:27;;25876:2;26004;25996:6;25993:14;25973:18;25970:38;25967:2;;;26023:18;;:::i;:::-;25967:2;25788:269;;;;:::o;26063:281::-;26146:27;26168:4;26146:27;:::i;:::-;26138:6;26134:40;26276:6;26264:10;26261:22;26240:18;26228:10;26225:34;26222:62;26219:2;;;26287:18;;:::i;:::-;26219:2;26327:10;26323:2;26316:22;26106:238;;;:::o;26350:233::-;;26412:24;26430:5;26412:24;:::i;:::-;26403:33;;26458:66;26451:5;26448:77;26445:2;;;26528:18;;:::i;:::-;26445:2;26575:1;26568:5;26564:13;26557:20;;26393:190;;;:::o;26589:79::-;;26657:5;26646:16;;26636:32;;;:::o;26674:79::-;;26742:5;26731:16;;26721:32;;;:::o;26759:180::-;26807:77;26804:1;26797:88;26904:4;26901:1;26894:15;26928:4;26925:1;26918:15;26945:180;26993:77;26990:1;26983:88;27090:4;27087:1;27080:15;27114:4;27111:1;27104:15;27131:180;27179:77;27176:1;27169:88;27276:4;27273:1;27266:15;27300:4;27297:1;27290:15;27317:180;27365:77;27362:1;27355:88;27462:4;27459:1;27452:15;27486:4;27483:1;27476:15;27503:102;;27595:2;27591:7;27586:2;27579:5;27575:14;27571:28;27561:38;;27551:54;;;:::o;27611:222::-;27751:34;27747:1;27739:6;27735:14;27728:58;27820:5;27815:2;27807:6;27803:15;27796:30;27717:116;:::o;27839:221::-;27979:34;27975:1;27967:6;27963:14;27956:58;28048:4;28043:2;28035:6;28031:15;28024:29;27945:115;:::o;28066:179::-;28206:31;28202:1;28194:6;28190:14;28183:55;28172:73;:::o;28251:168::-;28391:20;28387:1;28379:6;28375:14;28368:44;28357:62;:::o;28425:182::-;28565:34;28561:1;28553:6;28549:14;28542:58;28531:76;:::o;28613:220::-;28753:34;28749:1;28741:6;28737:14;28730:58;28822:3;28817:2;28809:6;28805:15;28798:28;28719:114;:::o;28839:224::-;28979:34;28975:1;28967:6;28963:14;28956:58;29048:7;29043:2;29035:6;29031:15;29024:32;28945:118;:::o;29069:221::-;29209:34;29205:1;29197:6;29193:14;29186:58;29278:4;29273:2;29265:6;29261:15;29254:29;29175:115;:::o;29296:223::-;29436:34;29432:1;29424:6;29420:14;29413:58;29505:6;29500:2;29492:6;29488:15;29481:31;29402:117;:::o;29525:177::-;29665:29;29661:1;29653:6;29649:14;29642:53;29631:71;:::o;29708:181::-;29848:33;29844:1;29836:6;29832:14;29825:57;29814:75;:::o;29895:122::-;29968:24;29986:5;29968:24;:::i;:::-;29961:5;29958:35;29948:2;;30007:1;30004;29997:12;29948:2;29938:79;:::o;30023:122::-;30096:24;30114:5;30096:24;:::i;:::-;30089:5;30086:35;30076:2;;30135:1;30132;30125:12;30076:2;30066:79;:::o;30151:122::-;30224:24;30242:5;30224:24;:::i;:::-;30217:5;30214:35;30204:2;;30263:1;30260;30253:12;30204:2;30194:79;:::o" }, "methodIdentifiers": { + "addStakingRewards(uint256)": "d9c51cd4", "addresses(bytes32)": "699f200f", "allowance(address,address)": "dd62ed3e", "approve(address,uint256)": "095ea7b3", @@ -16776,7 +16319,6 @@ "decimals()": "313ce567", "depositStake(uint256)": "cb82cc8f", "faucet(address)": "b86d1d63", - "getCurrentReward(bytes32)": "a1e588a5", "getNewValueCountbyQueryId(bytes32)": "77b03e0d", "getReporterByTimestamp(bytes32,uint256)": "e07c5486", "getStakerInfo(address)": "733bdef0", @@ -16791,7 +16333,6 @@ "submitValue(bytes32,bytes,uint256,bytes)": "5eaa9ced", "symbol()": "95d89b41", "timeBasedReward()": "96426d97", - "timeOfLastNewValue()": "6fd4f229", "timestamps(bytes32,uint256)": "f25133f3", "tipQuery(bytes32,uint256,bytes)": "ef0234ad", "tips(bytes32)": "602bf227", @@ -16805,7 +16346,7 @@ "withdrawStake()": "bed9d861" } }, - "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_time\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_reward\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"NewReport\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"NewStaker\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"StakeWithdrawRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"StakeWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tip\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_totalTip\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"TipAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"addresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"beginDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"depositStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"faucet\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getReporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getVoteRounds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"isDisputed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"reporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"requestStakingWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"submitValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"timeBasedReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"timeOfLastNewValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"timestamps\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"tipQuery\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"tips\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tipsInContract\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"values\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"voteCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voteRounds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the amount that an address is alowed to spend of behalf of another\",\"params\":{\"_owner\":\"The address which owns the tokens\",\"_spender\":\"The address that will use the tokens\"},\"returns\":{\"_0\":\"uint256 The amount of allowed tokens\"}},\"approve(address,uint256)\":{\"details\":\"Approves amount that an address is alowed to spend of behalf of another\",\"params\":{\"_amount\":\"The amount that msg.sender is allowing spender to use\",\"_spender\":\"The address which is allowed to spend the tokens\"},\"returns\":{\"_0\":\"bool Whether the transaction succeeded\"}},\"balanceOf(address)\":{\"details\":\"Returns the balance of a given user.\",\"params\":{\"_account\":\"user address\"},\"returns\":{\"_0\":\"uint256 user's token balance\"}},\"beginDispute(bytes32,uint256)\":{\"details\":\"A mock function to create a dispute\",\"params\":{\"_queryId\":\"The tellorId to be disputed\",\"_timestamp\":\"the timestamp of the value to be disputed\"}},\"constructor\":{\"details\":\"Initializes playground parameters\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation.\",\"returns\":{\"_0\":\"uint8 the number of decimals; used only for display purposes\"}},\"depositStake(uint256)\":{\"details\":\"Allows a reporter to submit stake\",\"params\":{\"_amount\":\"amount of tokens to stake\"}},\"faucet(address)\":{\"details\":\"Public function to mint tokens to the given address\",\"params\":{\"_user\":\"The address which will receive the tokens\"}},\"getCurrentReward(bytes32)\":{\"details\":\"Calculates the current reward for a reporter given tips and time based reward\",\"params\":{\"_queryId\":\"is ID of the specific data feed\"},\"returns\":{\"_0\":\"uint256 tip amount for given query ID\",\"_1\":\"uint256 time based reward\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for a given ID\",\"params\":{\"_queryId\":\"the ID to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"getReporterByTimestamp(bytes32,uint256)\":{\"details\":\"Returns the reporter for a given timestamp and queryId\",\"params\":{\"_queryId\":\"bytes32 version of the queryId\",\"_timestamp\":\"uint256 timestamp of report\"},\"returns\":{\"_0\":\"address of data reporter\"}},\"getStakerInfo(address)\":{\"details\":\"Allows users to retrieve all information about a staker\",\"params\":{\"_staker\":\"address of staker inquiring about\"},\"returns\":{\"_0\":\"uint startDate of staking\",\"_1\":\"uint current amount staked\",\"_2\":\"uint current amount locked for withdrawal\",\"_3\":\"uint reporter's last reported timestamp\",\"_4\":\"uint total number of reports submitted by reporter\"}},\"getTimestampbyQueryIdandIndex(bytes32,uint256)\":{\"details\":\"Gets the timestamp for the value based on their index\",\"params\":{\"_index\":\"is the value index to look up\",\"_queryId\":\"is the queryId to look up\"},\"returns\":{\"_0\":\"uint256 timestamp\"}},\"getVoteRounds(bytes32)\":{\"details\":\"Returns an array of voting rounds for a given vote\",\"params\":{\"_hash\":\"is the identifier hash for a vote\"},\"returns\":{\"_0\":\"uint256[] memory dispute IDs of the vote rounds\"}},\"governance()\":{\"details\":\"Returns the governance address of the contract\",\"returns\":{\"_0\":\"address (this address)\"}},\"name()\":{\"details\":\"Returns the name of the token.\",\"returns\":{\"_0\":\"string name of the token\"}},\"requestStakingWithdraw(uint256)\":{\"details\":\"Allows a reporter to request to withdraw their stake\",\"params\":{\"_amount\":\"amount of staked tokens requesting to withdraw\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieves value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for queryId/timestamp submitted\"}},\"submitValue(bytes32,bytes,uint256,bytes)\":{\"details\":\"A mock function to submit a value to be read without reporter staking needed\",\"params\":{\"_nonce\":\"the current value count for the query id\",\"_queryData\":\"the data used by reporters to fulfill the data query\",\"_queryId\":\"the ID to associate the value to\",\"_value\":\"the value for the queryId\"}},\"symbol()\":{\"details\":\"Returns the symbol of the token.\",\"returns\":{\"_0\":\"string symbol of the token\"}},\"tipQuery(bytes32,uint256,bytes)\":{\"details\":\"Adds a tip to a given query ID.\",\"params\":{\"_amount\":\"is the amount of tips\",\"_queryData\":\"is the extra bytes data needed to fulfill the request\",\"_queryId\":\"is the queryId to look up\"}},\"totalSupply()\":{\"details\":\"Returns the total supply of the token.\",\"returns\":{\"_0\":\"uint256 total supply of token\"}},\"transfer(address,uint256)\":{\"details\":\"Transfer tokens from one user to another\",\"params\":{\"_amount\":\"The amount of tokens, including decimals, to transfer\",\"_recipient\":\"The destination address\"},\"returns\":{\"_0\":\"bool If the transfer succeeded\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfer tokens from user to another\",\"params\":{\"_amount\":\"The quantity of tokens to transfer\",\"_recipient\":\"The destination address\",\"_sender\":\"The address which owns the tokens\"},\"returns\":{\"_0\":\"bool Whether the transfer succeeded\"}},\"withdrawStake()\":{\"details\":\"Withdraws a reporter's stake\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/TellorPlayground.sol\":\"TellorPlayground\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/TellorPlayground.sol\":{\"keccak256\":\"0x7ba28cadc6eb00863e9fe74af03a14c0eee720de0cd142a9f03d1c3d792c8c67\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4a59ef269e6b9b7aa9690b3cdf5855b89bcc840755f2a8dc36e84cd189bbd024\",\"dweb:/ipfs/QmPmUnziKcp5tPxriw72ZJjeFpJG2V1cm7n4xwdECvg37h\"]}},\"version\":1}" + "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_time\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"NewReport\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"NewStaker\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"StakeWithdrawRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"StakeWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tip\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_totalTip\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"TipAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"addStakingRewards\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"addresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"beginDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"depositStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"faucet\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getReporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getVoteRounds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"isDisputed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"reporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"requestStakingWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"submitValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"timeBasedReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"timestamps\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"tipQuery\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"tips\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tipsInContract\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"values\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"voteCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voteRounds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addStakingRewards(uint256)\":{\"details\":\"Mock function for adding staking rewards\",\"params\":{\"_amount\":\"quantity of tokens to transfer to this contract\"}},\"allowance(address,address)\":{\"details\":\"Returns the amount that an address is alowed to spend of behalf of another\",\"params\":{\"_owner\":\"The address which owns the tokens\",\"_spender\":\"The address that will use the tokens\"},\"returns\":{\"_0\":\"uint256 The amount of allowed tokens\"}},\"approve(address,uint256)\":{\"details\":\"Approves amount that an address is alowed to spend of behalf of another\",\"params\":{\"_amount\":\"The amount that msg.sender is allowing spender to use\",\"_spender\":\"The address which is allowed to spend the tokens\"},\"returns\":{\"_0\":\"bool Whether the transaction succeeded\"}},\"balanceOf(address)\":{\"details\":\"Returns the balance of a given user.\",\"params\":{\"_account\":\"user address\"},\"returns\":{\"_0\":\"uint256 user's token balance\"}},\"beginDispute(bytes32,uint256)\":{\"details\":\"A mock function to create a dispute\",\"params\":{\"_queryId\":\"The tellorId to be disputed\",\"_timestamp\":\"the timestamp of the value to be disputed\"}},\"constructor\":{\"details\":\"Initializes playground parameters\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation.\",\"returns\":{\"_0\":\"uint8 the number of decimals; used only for display purposes\"}},\"depositStake(uint256)\":{\"details\":\"Allows a reporter to submit stake\",\"params\":{\"_amount\":\"amount of tokens to stake\"}},\"faucet(address)\":{\"details\":\"Public function to mint tokens to the given address\",\"params\":{\"_user\":\"The address which will receive the tokens\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for a given ID\",\"params\":{\"_queryId\":\"the ID to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"getReporterByTimestamp(bytes32,uint256)\":{\"details\":\"Returns the reporter for a given timestamp and queryId\",\"params\":{\"_queryId\":\"bytes32 version of the queryId\",\"_timestamp\":\"uint256 timestamp of report\"},\"returns\":{\"_0\":\"address of data reporter\"}},\"getStakerInfo(address)\":{\"details\":\"Allows users to retrieve all information about a staker\",\"params\":{\"_staker\":\"address of staker inquiring about\"},\"returns\":{\"_0\":\"uint startDate of staking\",\"_1\":\"uint current amount staked\",\"_2\":\"uint current amount locked for withdrawal\",\"_3\":\"uint reporter's last reported timestamp\",\"_4\":\"uint total number of reports submitted by reporter\"}},\"getTimestampbyQueryIdandIndex(bytes32,uint256)\":{\"details\":\"Gets the timestamp for the value based on their index\",\"params\":{\"_index\":\"is the value index to look up\",\"_queryId\":\"is the queryId to look up\"},\"returns\":{\"_0\":\"uint256 timestamp\"}},\"getVoteRounds(bytes32)\":{\"details\":\"Returns an array of voting rounds for a given vote\",\"params\":{\"_hash\":\"is the identifier hash for a vote\"},\"returns\":{\"_0\":\"uint256[] memory dispute IDs of the vote rounds\"}},\"governance()\":{\"details\":\"Returns the governance address of the contract\",\"returns\":{\"_0\":\"address (this address)\"}},\"name()\":{\"details\":\"Returns the name of the token.\",\"returns\":{\"_0\":\"string name of the token\"}},\"requestStakingWithdraw(uint256)\":{\"details\":\"Allows a reporter to request to withdraw their stake\",\"params\":{\"_amount\":\"amount of staked tokens requesting to withdraw\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieves value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for queryId/timestamp submitted\"}},\"submitValue(bytes32,bytes,uint256,bytes)\":{\"details\":\"A mock function to submit a value to be read without reporter staking needed\",\"params\":{\"_nonce\":\"the current value count for the query id\",\"_queryData\":\"the data used by reporters to fulfill the data query\",\"_queryId\":\"the ID to associate the value to\",\"_value\":\"the value for the queryId\"}},\"symbol()\":{\"details\":\"Returns the symbol of the token.\",\"returns\":{\"_0\":\"string symbol of the token\"}},\"tipQuery(bytes32,uint256,bytes)\":{\"details\":\"Adds a tip to a given query ID.\",\"params\":{\"_amount\":\"is the amount of tips\",\"_queryData\":\"is the extra bytes data needed to fulfill the request\",\"_queryId\":\"is the queryId to look up\"}},\"totalSupply()\":{\"details\":\"Returns the total supply of the token.\",\"returns\":{\"_0\":\"uint256 total supply of token\"}},\"transfer(address,uint256)\":{\"details\":\"Transfer tokens from one user to another\",\"params\":{\"_amount\":\"The amount of tokens, including decimals, to transfer\",\"_recipient\":\"The destination address\"},\"returns\":{\"_0\":\"bool If the transfer succeeded\"}},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfer tokens from user to another\",\"params\":{\"_amount\":\"The quantity of tokens to transfer\",\"_recipient\":\"The destination address\",\"_sender\":\"The address which owns the tokens\"},\"returns\":{\"_0\":\"bool Whether the transfer succeeded\"}},\"withdrawStake()\":{\"details\":\"Withdraws a reporter's stake\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/TellorPlayground.sol\":\"TellorPlayground\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/TellorPlayground.sol\":{\"keccak256\":\"0x5a6dcc567c5a20e220a1c328ba121d10f40c7852c860962cc7fd65d4121cf40c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719b823a54d65f946f4e3a242a2af73f2bab6e7830efc5ce8ce818b039896e57\",\"dweb:/ipfs/QmaRgxekUSVwWzk66pqGUg7wC4dGzYJkshs7gBLgEb65i8\"]}},\"version\":1}" } } }, @@ -16815,10 +16356,10 @@ "absolutePath": "contracts/TellorPlayground.sol", "exportedSymbols": { "TellorPlayground": [ - 1176 + 1096 ] }, - "id": 1177, + "id": 1097, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ @@ -16839,9 +16380,9 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 1176, + "id": 1096, "linearizedBaseContracts": [ - 1176 + 1096 ], "name": "TellorPlayground", "nameLocation": "66:16:0", @@ -16950,12 +16491,12 @@ }, { "anonymous": false, - "id": 25, + "id": 23, "name": "NewReport", "nameLocation": "222:9:0", "nodeType": "EventDefinition", "parameters": { - "id": 24, + "id": 22, "nodeType": "ParameterList", "parameters": [ { @@ -16966,7 +16507,7 @@ "name": "_queryId", "nameLocation": "249:8:0", "nodeType": "VariableDeclaration", - "scope": 25, + "scope": 23, "src": "241:16:0", "stateVariable": false, "storageLocation": "default", @@ -16994,7 +16535,7 @@ "name": "_time", "nameLocation": "275:5:0", "nodeType": "VariableDeclaration", - "scope": 25, + "scope": 23, "src": "267:13:0", "stateVariable": false, "storageLocation": "default", @@ -17022,7 +16563,7 @@ "name": "_value", "nameLocation": "296:6:0", "nodeType": "VariableDeclaration", - "scope": 25, + "scope": 23, "src": "290:12:0", "stateVariable": false, "storageLocation": "default", @@ -17047,11 +16588,11 @@ "id": 17, "indexed": false, "mutability": "mutable", - "name": "_reward", - "nameLocation": "320:7:0", + "name": "_nonce", + "nameLocation": "320:6:0", "nodeType": "VariableDeclaration", - "scope": 25, - "src": "312:15:0", + "scope": 23, + "src": "312:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17075,39 +16616,11 @@ "id": 19, "indexed": false, "mutability": "mutable", - "name": "_nonce", - "nameLocation": "345:6:0", - "nodeType": "VariableDeclaration", - "scope": 25, - "src": "337:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 18, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "337:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 21, - "indexed": false, - "mutability": "mutable", "name": "_queryData", - "nameLocation": "367:10:0", + "nameLocation": "342:10:0", "nodeType": "VariableDeclaration", - "scope": 25, - "src": "361:16:0", + "scope": 23, + "src": "336:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17115,10 +16628,10 @@ "typeString": "bytes" }, "typeName": { - "id": 20, + "id": 18, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "361:5:0", + "src": "336:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -17128,14 +16641,14 @@ }, { "constant": false, - "id": 23, + "id": 21, "indexed": false, "mutability": "mutable", "name": "_reporter", - "nameLocation": "395:9:0", + "nameLocation": "370:9:0", "nodeType": "VariableDeclaration", - "scope": 25, - "src": "387:17:0", + "scope": 23, + "src": "362:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17143,10 +16656,10 @@ "typeString": "address" }, "typeName": { - "id": 22, + "id": 20, "name": "address", "nodeType": "ElementaryTypeName", - "src": "387:7:0", + "src": "362:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17156,30 +16669,30 @@ "visibility": "internal" } ], - "src": "231:179:0" + "src": "231:154:0" }, - "src": "216:195:0" + "src": "216:170:0" }, { "anonymous": false, - "id": 31, + "id": 29, "name": "NewStaker", - "nameLocation": "422:9:0", + "nameLocation": "397:9:0", "nodeType": "EventDefinition", "parameters": { - "id": 30, + "id": 28, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27, + "id": 25, "indexed": false, "mutability": "mutable", "name": "_staker", - "nameLocation": "440:7:0", + "nameLocation": "415:7:0", "nodeType": "VariableDeclaration", - "scope": 31, - "src": "432:15:0", + "scope": 29, + "src": "407:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17187,10 +16700,10 @@ "typeString": "address" }, "typeName": { - "id": 26, + "id": 24, "name": "address", "nodeType": "ElementaryTypeName", - "src": "432:7:0", + "src": "407:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17201,14 +16714,14 @@ }, { "constant": false, - "id": 29, + "id": 27, "indexed": false, "mutability": "mutable", "name": "_amount", - "nameLocation": "457:7:0", + "nameLocation": "432:7:0", "nodeType": "VariableDeclaration", - "scope": 31, - "src": "449:15:0", + "scope": 29, + "src": "424:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17216,10 +16729,10 @@ "typeString": "uint256" }, "typeName": { - "id": 28, + "id": 26, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "449:7:0", + "src": "424:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17228,30 +16741,30 @@ "visibility": "internal" } ], - "src": "431:34:0" + "src": "406:34:0" }, - "src": "416:50:0" + "src": "391:50:0" }, { "anonymous": false, - "id": 43, + "id": 41, "name": "TipAdded", - "nameLocation": "477:8:0", + "nameLocation": "452:8:0", "nodeType": "EventDefinition", "parameters": { - "id": 42, + "id": 40, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 33, + "id": 31, "indexed": true, "mutability": "mutable", "name": "_user", - "nameLocation": "511:5:0", + "nameLocation": "486:5:0", "nodeType": "VariableDeclaration", - "scope": 43, - "src": "495:21:0", + "scope": 41, + "src": "470:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17259,10 +16772,10 @@ "typeString": "address" }, "typeName": { - "id": 32, + "id": 30, "name": "address", "nodeType": "ElementaryTypeName", - "src": "495:7:0", + "src": "470:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17273,14 +16786,14 @@ }, { "constant": false, - "id": 35, + "id": 33, "indexed": true, "mutability": "mutable", "name": "_queryId", - "nameLocation": "542:8:0", + "nameLocation": "517:8:0", "nodeType": "VariableDeclaration", - "scope": 43, - "src": "526:24:0", + "scope": 41, + "src": "501:24:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17288,10 +16801,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 34, + "id": 32, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "526:7:0", + "src": "501:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -17301,14 +16814,14 @@ }, { "constant": false, - "id": 37, + "id": 35, "indexed": false, "mutability": "mutable", "name": "_tip", - "nameLocation": "568:4:0", + "nameLocation": "543:4:0", "nodeType": "VariableDeclaration", - "scope": 43, - "src": "560:12:0", + "scope": 41, + "src": "535:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17316,10 +16829,10 @@ "typeString": "uint256" }, "typeName": { - "id": 36, + "id": 34, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "560:7:0", + "src": "535:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17329,14 +16842,14 @@ }, { "constant": false, - "id": 39, + "id": 37, "indexed": false, "mutability": "mutable", "name": "_totalTip", - "nameLocation": "590:9:0", + "nameLocation": "565:9:0", "nodeType": "VariableDeclaration", - "scope": 43, - "src": "582:17:0", + "scope": 41, + "src": "557:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17344,10 +16857,10 @@ "typeString": "uint256" }, "typeName": { - "id": 38, + "id": 36, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "582:7:0", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17357,14 +16870,14 @@ }, { "constant": false, - "id": 41, + "id": 39, "indexed": false, "mutability": "mutable", "name": "_queryData", - "nameLocation": "615:10:0", + "nameLocation": "590:10:0", "nodeType": "VariableDeclaration", - "scope": 43, - "src": "609:16:0", + "scope": 41, + "src": "584:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17372,10 +16885,10 @@ "typeString": "bytes" }, "typeName": { - "id": 40, + "id": 38, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "609:5:0", + "src": "584:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -17384,30 +16897,30 @@ "visibility": "internal" } ], - "src": "485:146:0" + "src": "460:146:0" }, - "src": "471:161:0" + "src": "446:161:0" }, { "anonymous": false, - "id": 49, + "id": 47, "name": "StakeWithdrawRequested", - "nameLocation": "643:22:0", + "nameLocation": "618:22:0", "nodeType": "EventDefinition", "parameters": { - "id": 48, + "id": 46, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 45, + "id": 43, "indexed": false, "mutability": "mutable", "name": "_staker", - "nameLocation": "674:7:0", + "nameLocation": "649:7:0", "nodeType": "VariableDeclaration", - "scope": 49, - "src": "666:15:0", + "scope": 47, + "src": "641:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17415,10 +16928,10 @@ "typeString": "address" }, "typeName": { - "id": 44, + "id": 42, "name": "address", "nodeType": "ElementaryTypeName", - "src": "666:7:0", + "src": "641:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17429,14 +16942,14 @@ }, { "constant": false, - "id": 47, + "id": 45, "indexed": false, "mutability": "mutable", "name": "_amount", - "nameLocation": "691:7:0", + "nameLocation": "666:7:0", "nodeType": "VariableDeclaration", - "scope": 49, - "src": "683:15:0", + "scope": 47, + "src": "658:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17444,10 +16957,10 @@ "typeString": "uint256" }, "typeName": { - "id": 46, + "id": 44, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "683:7:0", + "src": "658:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17456,30 +16969,30 @@ "visibility": "internal" } ], - "src": "665:34:0" + "src": "640:34:0" }, - "src": "637:63:0" + "src": "612:63:0" }, { "anonymous": false, - "id": 53, + "id": 51, "name": "StakeWithdrawn", - "nameLocation": "711:14:0", + "nameLocation": "686:14:0", "nodeType": "EventDefinition", "parameters": { - "id": 52, + "id": 50, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 51, + "id": 49, "indexed": false, "mutability": "mutable", "name": "_staker", - "nameLocation": "734:7:0", + "nameLocation": "709:7:0", "nodeType": "VariableDeclaration", - "scope": 53, - "src": "726:15:0", + "scope": 51, + "src": "701:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17487,10 +17000,10 @@ "typeString": "address" }, "typeName": { - "id": 50, + "id": 48, "name": "address", "nodeType": "ElementaryTypeName", - "src": "726:7:0", + "src": "701:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17500,30 +17013,30 @@ "visibility": "internal" } ], - "src": "725:17:0" + "src": "700:17:0" }, - "src": "705:38:0" + "src": "680:38:0" }, { "anonymous": false, - "id": 61, + "id": 59, "name": "Transfer", - "nameLocation": "754:8:0", + "nameLocation": "729:8:0", "nodeType": "EventDefinition", "parameters": { - "id": 60, + "id": 58, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 55, + "id": 53, "indexed": true, "mutability": "mutable", "name": "from", - "nameLocation": "779:4:0", + "nameLocation": "754:4:0", "nodeType": "VariableDeclaration", - "scope": 61, - "src": "763:20:0", + "scope": 59, + "src": "738:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17531,10 +17044,10 @@ "typeString": "address" }, "typeName": { - "id": 54, + "id": 52, "name": "address", "nodeType": "ElementaryTypeName", - "src": "763:7:0", + "src": "738:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17545,14 +17058,14 @@ }, { "constant": false, - "id": 57, + "id": 55, "indexed": true, "mutability": "mutable", "name": "to", - "nameLocation": "801:2:0", + "nameLocation": "776:2:0", "nodeType": "VariableDeclaration", - "scope": 61, - "src": "785:18:0", + "scope": 59, + "src": "760:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17560,10 +17073,10 @@ "typeString": "address" }, "typeName": { - "id": 56, + "id": 54, "name": "address", "nodeType": "ElementaryTypeName", - "src": "785:7:0", + "src": "760:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17574,14 +17087,14 @@ }, { "constant": false, - "id": 59, + "id": 57, "indexed": false, "mutability": "mutable", "name": "value", - "nameLocation": "813:5:0", + "nameLocation": "788:5:0", "nodeType": "VariableDeclaration", - "scope": 61, - "src": "805:13:0", + "scope": 59, + "src": "780:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17589,10 +17102,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 56, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "805:7:0", + "src": "780:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17601,20 +17114,20 @@ "visibility": "internal" } ], - "src": "762:57:0" + "src": "737:57:0" }, - "src": "748:72:0" + "src": "723:72:0" }, { "constant": false, "functionSelector": "699f200f", - "id": 65, + "id": 63, "mutability": "mutable", "name": "addresses", - "nameLocation": "876:9:0", + "nameLocation": "851:9:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "841:44:0", + "scope": 1096, + "src": "816:44:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17622,28 +17135,28 @@ "typeString": "mapping(bytes32 => address)" }, "typeName": { - "id": 64, + "id": 62, "keyType": { - "id": 62, + "id": 60, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "849:7:0", + "src": "824:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "841:27:0", + "src": "816:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", "typeString": "mapping(bytes32 => address)" }, "valueType": { - "id": 63, + "id": 61, "name": "address", "nodeType": "ElementaryTypeName", - "src": "860:7:0", + "src": "835:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17656,13 +17169,13 @@ { "constant": false, "functionSelector": "64473df2", - "id": 71, + "id": 69, "mutability": "mutable", "name": "isDisputed", - "nameLocation": "943:10:0", + "nameLocation": "918:10:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "891:62:0", + "scope": 1096, + "src": "866:62:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17670,46 +17183,46 @@ "typeString": "mapping(bytes32 => mapping(uint256 => bool))" }, "typeName": { - "id": 70, + "id": 68, "keyType": { - "id": 66, + "id": 64, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "899:7:0", + "src": "874:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "891:44:0", + "src": "866:44:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bool_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => bool))" }, "valueType": { - "id": 69, + "id": 67, "keyType": { - "id": 67, + "id": 65, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "918:7:0", + "src": "893:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "910:24:0", + "src": "885:24:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" }, "valueType": { - "id": 68, + "id": 66, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "929:4:0", + "src": "904:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17722,13 +17235,13 @@ { "constant": false, "functionSelector": "217053c0", - "id": 77, + "id": 75, "mutability": "mutable", "name": "reporterByTimestamp", - "nameLocation": "1046:19:0", + "nameLocation": "1021:19:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "991:74:0", + "scope": 1096, + "src": "966:74:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17736,46 +17249,46 @@ "typeString": "mapping(bytes32 => mapping(uint256 => address))" }, "typeName": { - "id": 76, + "id": 74, "keyType": { - "id": 72, + "id": 70, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "999:7:0", + "src": "974:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "991:47:0", + "src": "966:47:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => address))" }, "valueType": { - "id": 75, + "id": 73, "keyType": { - "id": 73, + "id": 71, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1018:7:0", + "src": "993:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "1010:27:0", + "src": "985:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", "typeString": "mapping(uint256 => address)" }, "valueType": { - "id": 74, + "id": 72, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1029:7:0", + "src": "1004:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -17788,51 +17301,51 @@ }, { "constant": false, - "id": 82, + "id": 80, "mutability": "mutable", "name": "stakerDetails", - "nameLocation": "1101:13:0", + "nameLocation": "1076:13:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1071:43:0", + "scope": 1096, + "src": "1046:43:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo)" }, "typeName": { - "id": 81, + "id": 79, "keyType": { - "id": 78, + "id": 76, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1079:7:0", + "src": "1054:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1071:29:0", + "src": "1046:29:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo)" }, "valueType": { - "id": 80, + "id": 78, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 79, + "id": 77, "name": "StakeInfo", "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "1090:9:0" + "referencedDeclaration": 136, + "src": "1065:9:0" }, - "referencedDeclaration": 142, - "src": "1090:9:0", + "referencedDeclaration": 136, + "src": "1065:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" } } @@ -17842,13 +17355,13 @@ { "constant": false, "functionSelector": "f25133f3", - "id": 87, + "id": 85, "mutability": "mutable", "name": "timestamps", - "nameLocation": "1212:10:0", + "nameLocation": "1187:10:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1175:47:0", + "scope": 1096, + "src": "1150:47:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17856,37 +17369,37 @@ "typeString": "mapping(bytes32 => uint256[])" }, "typeName": { - "id": 86, + "id": 84, "keyType": { - "id": 83, + "id": 81, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1183:7:0", + "src": "1158:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1175:29:0", + "src": "1150:29:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[])" }, "valueType": { "baseType": { - "id": 84, + "id": 82, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1194:7:0", + "src": "1169:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 85, + "id": 83, "nodeType": "ArrayTypeName", - "src": "1194:9:0", + "src": "1169:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -17898,13 +17411,13 @@ { "constant": false, "functionSelector": "602bf227", - "id": 91, + "id": 89, "mutability": "mutable", "name": "tips", - "nameLocation": "1263:4:0", + "nameLocation": "1238:4:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1228:39:0", + "scope": 1096, + "src": "1203:39:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17912,28 +17425,28 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 90, + "id": 88, "keyType": { - "id": 88, + "id": 86, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1236:7:0", + "src": "1211:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1228:27:0", + "src": "1203:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "valueType": { - "id": 89, + "id": 87, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1247:7:0", + "src": "1222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17945,13 +17458,13 @@ { "constant": false, "functionSelector": "091b50ff", - "id": 97, + "id": 95, "mutability": "mutable", "name": "values", - "nameLocation": "1386:6:0", + "nameLocation": "1361:6:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1333:59:0", + "scope": 1096, + "src": "1308:59:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17959,46 +17472,46 @@ "typeString": "mapping(bytes32 => mapping(uint256 => bytes))" }, "typeName": { - "id": 96, + "id": 94, "keyType": { - "id": 92, + "id": 90, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1341:7:0", + "src": "1316:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1333:45:0", + "src": "1308:45:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => bytes))" }, "valueType": { - "id": 95, + "id": 93, "keyType": { - "id": 93, + "id": 91, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1360:7:0", + "src": "1335:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "1352:25:0", + "src": "1327:25:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", "typeString": "mapping(uint256 => bytes)" }, "valueType": { - "id": 94, + "id": 92, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1371:5:0", + "src": "1346:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -18011,13 +17524,13 @@ { "constant": false, "functionSelector": "c979fe9f", - "id": 102, + "id": 100, "mutability": "mutable", "name": "voteRounds", - "nameLocation": "1467:10:0", + "nameLocation": "1442:10:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1430:47:0", + "scope": 1096, + "src": "1405:47:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18025,37 +17538,37 @@ "typeString": "mapping(bytes32 => uint256[])" }, "typeName": { - "id": 101, + "id": 99, "keyType": { - "id": 98, + "id": 96, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1438:7:0", + "src": "1413:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1430:29:0", + "src": "1405:29:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[])" }, "valueType": { "baseType": { - "id": 99, + "id": 97, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1449:7:0", + "src": "1424:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 100, + "id": 98, "nodeType": "ArrayTypeName", - "src": "1449:9:0", + "src": "1424:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -18066,13 +17579,13 @@ }, { "constant": false, - "id": 108, + "id": 106, "mutability": "mutable", "name": "_allowances", - "nameLocation": "1603:11:0", + "nameLocation": "1578:11:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1547:67:0", + "scope": 1096, + "src": "1522:67:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18080,46 +17593,46 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 107, + "id": 105, "keyType": { - "id": 103, + "id": 101, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1555:7:0", + "src": "1530:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1547:47:0", + "src": "1522:47:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" }, "valueType": { - "id": 106, + "id": 104, "keyType": { - "id": 104, + "id": 102, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1574:7:0", + "src": "1549:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1566:27:0", + "src": "1541:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 105, + "id": 103, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1585:7:0", + "src": "1560:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18131,13 +17644,13 @@ }, { "constant": false, - "id": 112, + "id": 110, "mutability": "mutable", "name": "_balances", - "nameLocation": "1656:9:0", + "nameLocation": "1631:9:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1620:45:0", + "scope": 1096, + "src": "1595:45:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18145,28 +17658,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 111, + "id": 109, "keyType": { - "id": 109, + "id": 107, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1628:7:0", + "src": "1603:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1620:27:0", + "src": "1595:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 110, + "id": 108, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1639:7:0", + "src": "1614:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18178,13 +17691,13 @@ { "constant": true, "functionSelector": "96426d97", - "id": 115, + "id": 113, "mutability": "constant", "name": "timeBasedReward", - "nameLocation": "1696:15:0", + "nameLocation": "1671:15:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1672:46:0", + "scope": 1096, + "src": "1647:46:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18192,10 +17705,10 @@ "typeString": "uint256" }, "typeName": { - "id": 113, + "id": 111, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1672:7:0", + "src": "1647:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18203,14 +17716,14 @@ }, "value": { "hexValue": "35653137", - "id": 114, + "id": 112, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1714:4:0", + "src": "1689:4:0", "typeDescriptions": { "typeIdentifier": "t_rational_500000000000000000_by_1", "typeString": "int_const 500000000000000000" @@ -18221,14 +17734,14 @@ }, { "constant": false, - "functionSelector": "6fd4f229", - "id": 119, + "functionSelector": "69d43bd3", + "id": 115, "mutability": "mutable", - "name": "timeOfLastNewValue", - "nameLocation": "1811:18:0", + "name": "tipsInContract", + "nameLocation": "1786:14:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1796:51:0", + "scope": 1096, + "src": "1771:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18236,36 +17749,10 @@ "typeString": "uint256" }, "typeName": { - "id": 116, + "id": 114, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1796:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "expression": { - "id": 117, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1832:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1832:15:0", + "src": "1771:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18275,14 +17762,14 @@ }, { "constant": false, - "functionSelector": "69d43bd3", - "id": 121, + "functionSelector": "c6384071", + "id": 117, "mutability": "mutable", - "name": "tipsInContract", - "nameLocation": "1937:14:0", + "name": "voteCount", + "nameLocation": "1859:9:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1922:29:0", + "scope": 1096, + "src": "1844:24:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18290,10 +17777,10 @@ "typeString": "uint256" }, "typeName": { - "id": 120, + "id": 116, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1922:7:0", + "src": "1844:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18303,41 +17790,13 @@ }, { "constant": false, - "functionSelector": "c6384071", - "id": 123, - "mutability": "mutable", - "name": "voteCount", - "nameLocation": "2010:9:0", - "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "1995:24:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 122, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1995:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 125, + "id": 119, "mutability": "mutable", "name": "_totalSupply", - "nameLocation": "2041:12:0", + "nameLocation": "1890:12:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "2025:28:0", + "scope": 1096, + "src": "1874:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18345,10 +17804,10 @@ "typeString": "uint256" }, "typeName": { - "id": 124, + "id": 118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2025:7:0", + "src": "1874:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18358,13 +17817,13 @@ }, { "constant": false, - "id": 127, + "id": 121, "mutability": "mutable", "name": "_name", - "nameLocation": "2074:5:0", + "nameLocation": "1923:5:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "2059:20:0", + "scope": 1096, + "src": "1908:20:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18372,10 +17831,10 @@ "typeString": "string" }, "typeName": { - "id": 126, + "id": 120, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2059:6:0", + "src": "1908:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -18385,13 +17844,13 @@ }, { "constant": false, - "id": 129, + "id": 123, "mutability": "mutable", "name": "_symbol", - "nameLocation": "2100:7:0", + "nameLocation": "1949:7:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "2085:22:0", + "scope": 1096, + "src": "1934:22:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18399,10 +17858,10 @@ "typeString": "string" }, "typeName": { - "id": 128, + "id": 122, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2085:6:0", + "src": "1934:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -18412,13 +17871,13 @@ }, { "constant": false, - "id": 131, + "id": 125, "mutability": "mutable", "name": "_decimals", - "nameLocation": "2127:9:0", + "nameLocation": "1976:9:0", "nodeType": "VariableDeclaration", - "scope": 1176, - "src": "2113:23:0", + "scope": 1096, + "src": "1962:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18426,10 +17885,10 @@ "typeString": "uint8" }, "typeName": { - "id": 130, + "id": 124, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2113:5:0", + "src": "1962:5:0", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -18439,17 +17898,17 @@ }, { "canonicalName": "TellorPlayground.StakeInfo", - "id": 142, + "id": 136, "members": [ { "constant": false, - "id": 133, + "id": 127, "mutability": "mutable", "name": "startDate", - "nameLocation": "2193:9:0", + "nameLocation": "2042:9:0", "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2185:17:0", + "scope": 136, + "src": "2034:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18457,10 +17916,10 @@ "typeString": "uint256" }, "typeName": { - "id": 132, + "id": 126, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2185:7:0", + "src": "2034:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18470,13 +17929,13 @@ }, { "constant": false, - "id": 135, + "id": 129, "mutability": "mutable", "name": "stakedBalance", - "nameLocation": "2239:13:0", + "nameLocation": "2088:13:0", "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2231:21:0", + "scope": 136, + "src": "2080:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18484,10 +17943,10 @@ "typeString": "uint256" }, "typeName": { - "id": 134, + "id": 128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2231:7:0", + "src": "2080:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18497,13 +17956,13 @@ }, { "constant": false, - "id": 137, + "id": 131, "mutability": "mutable", "name": "lockedBalance", - "nameLocation": "2288:13:0", + "nameLocation": "2137:13:0", "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2280:21:0", + "scope": 136, + "src": "2129:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18511,10 +17970,10 @@ "typeString": "uint256" }, "typeName": { - "id": 136, + "id": 130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2280:7:0", + "src": "2129:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18524,13 +17983,13 @@ }, { "constant": false, - "id": 139, + "id": 133, "mutability": "mutable", "name": "reporterLastTimestamp", - "nameLocation": "2351:21:0", + "nameLocation": "2200:21:0", "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2343:29:0", + "scope": 136, + "src": "2192:29:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18538,10 +17997,10 @@ "typeString": "uint256" }, "typeName": { - "id": 138, + "id": 132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2343:7:0", + "src": "2192:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18551,13 +18010,13 @@ }, { "constant": false, - "id": 141, + "id": 135, "mutability": "mutable", "name": "reportsSubmitted", - "nameLocation": "2437:16:0", + "nameLocation": "2286:16:0", "nodeType": "VariableDeclaration", - "scope": 142, - "src": "2429:24:0", + "scope": 136, + "src": "2278:24:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18565,10 +18024,10 @@ "typeString": "uint256" }, "typeName": { - "id": 140, + "id": 134, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2429:7:0", + "src": "2278:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18578,32 +18037,32 @@ } ], "name": "StakeInfo", - "nameLocation": "2165:9:0", + "nameLocation": "2014:9:0", "nodeType": "StructDefinition", - "scope": 1176, - "src": "2158:351:0", + "scope": 1096, + "src": "2007:351:0", "visibility": "public" }, { "body": { - "id": 172, + "id": 166, "nodeType": "Block", - "src": "2608:203:0", + "src": "2457:203:0", "statements": [ { "expression": { - "id": 148, + "id": 142, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 146, + "id": 140, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "2618:5:0", + "referencedDeclaration": 121, + "src": "2467:5:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -18613,44 +18072,44 @@ "operator": "=", "rightHandSide": { "hexValue": "54656c6c6f72506c617967726f756e64", - "id": 147, + "id": 141, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2626:18:0", + "src": "2475:18:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a51d9d55f81c1d139d00a35fe45d3274bad996badcbc04d6c9b409ab08c9ed24", "typeString": "literal_string \"TellorPlayground\"" }, "value": "TellorPlayground" }, - "src": "2618:26:0", + "src": "2467:26:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 149, + "id": 143, "nodeType": "ExpressionStatement", - "src": "2618:26:0" + "src": "2467:26:0" }, { "expression": { - "id": 152, + "id": 146, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 150, + "id": 144, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 129, - "src": "2654:7:0", + "referencedDeclaration": 123, + "src": "2503:7:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -18660,44 +18119,44 @@ "operator": "=", "rightHandSide": { "hexValue": "54524250", - "id": 151, + "id": 145, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2664:6:0", + "src": "2513:6:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d0a2c6180d1ed34252a94f0ebb2b60879dac0618c8b26c1bc5fe17abaafe1942", "typeString": "literal_string \"TRBP\"" }, "value": "TRBP" }, - "src": "2654:16:0", + "src": "2503:16:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 153, + "id": 147, "nodeType": "ExpressionStatement", - "src": "2654:16:0" + "src": "2503:16:0" }, { "expression": { - "id": 156, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 154, + "id": 148, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "2680:9:0", + "referencedDeclaration": 125, + "src": "2529:9:0", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -18707,65 +18166,65 @@ "operator": "=", "rightHandSide": { "hexValue": "3138", - "id": 155, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2692:2:0", + "src": "2541:2:0", "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", "typeString": "int_const 18" }, "value": "18" }, - "src": "2680:14:0", + "src": "2529:14:0", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "id": 157, + "id": 151, "nodeType": "ExpressionStatement", - "src": "2680:14:0" + "src": "2529:14:0" }, { "expression": { - "id": 170, + "id": 164, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 158, + "id": 152, "name": "addresses", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "2704:9:0", + "referencedDeclaration": 63, + "src": "2553:9:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", "typeString": "mapping(bytes32 => address)" } }, - "id": 165, + "id": 159, "indexExpression": { "arguments": [ { "arguments": [ { "hexValue": "5f474f5645524e414e43455f434f4e5452414354", - "id": 162, + "id": 156, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2754:22:0", + "src": "2603:22:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_efa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93", "typeString": "literal_string \"_GOVERNANCE_CONTRACT\"" @@ -18781,31 +18240,31 @@ } ], "expression": { - "id": 160, + "id": 154, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "2737:3:0", + "src": "2586:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 161, + "id": 155, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "2737:16:0", + "src": "2586:16:0", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 163, + "id": 157, "isConstant": false, "isLValue": false, "isPure": true, @@ -18813,7 +18272,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2737:40:0", + "src": "2586:40:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -18828,18 +18287,18 @@ "typeString": "bytes memory" } ], - "id": 159, + "id": 153, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "2727:9:0", + "src": "2576:9:0", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 164, + "id": 158, "isConstant": false, "isLValue": false, "isPure": true, @@ -18847,7 +18306,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2727:51:0", + "src": "2576:51:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -18859,7 +18318,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2704:84:0", + "src": "2553:84:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18870,14 +18329,14 @@ "rightHandSide": { "arguments": [ { - "id": 168, + "id": 162, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "2799:4:0", + "src": "2648:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -18885,30 +18344,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 167, + "id": 161, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2791:7:0", + "src": "2640:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 166, + "id": 160, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2791:7:0", + "src": "2640:7:0", "typeDescriptions": {} } }, - "id": 169, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, @@ -18916,32 +18375,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2791:13:0", + "src": "2640:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2704:100:0", + "src": "2553:100:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 171, + "id": 165, "nodeType": "ExpressionStatement", - "src": "2704:100:0" + "src": "2553:100:0" } ] }, "documentation": { - "id": 143, + "id": 137, "nodeType": "StructuredDocumentation", - "src": "2532:57:0", + "src": "2381:57:0", "text": " @dev Initializes playground parameters" }, - "id": 173, + "id": 167, "implemented": true, "kind": "constructor", "modifiers": [], @@ -18949,77 +18408,327 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 144, + "id": 138, "nodeType": "ParameterList", "parameters": [], - "src": "2605:2:0" + "src": "2454:2:0" }, "returnParameters": { - "id": 145, + "id": 139, "nodeType": "ParameterList", "parameters": [], - "src": "2608:0:0" + "src": "2457:0:0" }, - "scope": 1176, - "src": "2594:217:0", + "scope": 1096, + "src": "2443:217:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 192, + "id": 185, + "nodeType": "Block", + "src": "2858:75:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "id": 175, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2890:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2890:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 179, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "2910:4:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TellorPlayground_$1096", + "typeString": "contract TellorPlayground" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TellorPlayground_$1096", + "typeString": "contract TellorPlayground" + } + ], + "id": 178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2902:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 177, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2902:7:0", + "typeDescriptions": {} + } + }, + "id": 180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2902:13:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 181, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 170, + "src": "2917:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 174, + "name": "_transferFrom", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1095, + "src": "2876:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) returns (bool)" + } + }, + "id": 182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2876:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 173, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2868:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2868:58:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 184, + "nodeType": "ExpressionStatement", + "src": "2868:58:0" + } + ] + }, + "documentation": { + "id": 168, + "nodeType": "StructuredDocumentation", + "src": "2666:134:0", + "text": " @dev Mock function for adding staking rewards\n @param _amount quantity of tokens to transfer to this contract" + }, + "functionSelector": "d9c51cd4", + "id": 186, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "addStakingRewards", + "nameLocation": "2814:17:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 171, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 170, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2840:7:0", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "2832:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 169, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2832:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2831:17:0" + }, + "returnParameters": { + "id": 172, + "nodeType": "ParameterList", + "parameters": [], + "src": "2858:0:0" + }, + "scope": 1096, + "src": "2805:128:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 205, "nodeType": "Block", - "src": "3236:77:0", + "src": "3358:77:0", "statements": [ { "expression": { "arguments": [ { "expression": { - "id": 184, + "id": 197, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "3255:3:0", + "src": "3377:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 185, + "id": 198, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "3255:10:0", + "src": "3377:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 186, + "id": 199, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 176, - "src": "3267:8:0", + "referencedDeclaration": 189, + "src": "3389:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 187, + "id": 200, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 178, - "src": "3277:7:0", + "referencedDeclaration": 191, + "src": "3399:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19041,18 +18750,18 @@ "typeString": "uint256" } ], - "id": 183, + "id": 196, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1013, - "src": "3246:8:0", + "referencedDeclaration": 933, + "src": "3368:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 188, + "id": 201, "isConstant": false, "isLValue": false, "isPure": false, @@ -19060,68 +18769,68 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3246:39:0", + "src": "3368:39:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 189, + "id": 202, "nodeType": "ExpressionStatement", - "src": "3246:39:0" + "src": "3368:39:0" }, { "expression": { "hexValue": "74727565", - "id": 190, + "id": 203, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "3302:4:0", + "src": "3424:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 182, - "id": 191, + "functionReturnParameters": 195, + "id": 204, "nodeType": "Return", - "src": "3295:11:0" + "src": "3417:11:0" } ] }, "documentation": { - "id": 174, + "id": 187, "nodeType": "StructuredDocumentation", - "src": "2817:304:0", + "src": "2939:304:0", "text": " @dev Approves amount that an address is alowed to spend of behalf of another\n @param _spender The address which is allowed to spend the tokens\n @param _amount The amount that msg.sender is allowing spender to use\n @return bool Whether the transaction succeeded" }, "functionSelector": "095ea7b3", - "id": 193, + "id": 206, "implemented": true, "kind": "function", "modifiers": [], "name": "approve", - "nameLocation": "3135:7:0", + "nameLocation": "3257:7:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 179, + "id": 192, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 176, + "id": 189, "mutability": "mutable", "name": "_spender", - "nameLocation": "3151:8:0", + "nameLocation": "3273:8:0", "nodeType": "VariableDeclaration", - "scope": 193, - "src": "3143:16:0", + "scope": 206, + "src": "3265:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19129,10 +18838,10 @@ "typeString": "address" }, "typeName": { - "id": 175, + "id": 188, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3143:7:0", + "src": "3265:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -19143,13 +18852,13 @@ }, { "constant": false, - "id": 178, + "id": 191, "mutability": "mutable", "name": "_amount", - "nameLocation": "3169:7:0", + "nameLocation": "3291:7:0", "nodeType": "VariableDeclaration", - "scope": 193, - "src": "3161:15:0", + "scope": 206, + "src": "3283:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19157,10 +18866,10 @@ "typeString": "uint256" }, "typeName": { - "id": 177, + "id": 190, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3161:7:0", + "src": "3283:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19169,21 +18878,21 @@ "visibility": "internal" } ], - "src": "3142:35:0" + "src": "3264:35:0" }, "returnParameters": { - "id": 182, + "id": 195, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 181, + "id": 194, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 193, - "src": "3226:4:0", + "scope": 206, + "src": "3348:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19191,10 +18900,10 @@ "typeString": "bool" }, "typeName": { - "id": 180, + "id": 193, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3226:4:0", + "src": "3348:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19203,23 +18912,23 @@ "visibility": "internal" } ], - "src": "3225:6:0" + "src": "3347:6:0" }, - "scope": 1176, - "src": "3126:187:0", + "scope": 1096, + "src": "3248:187:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { "body": { - "id": 236, + "id": 249, "nodeType": "Block", - "src": "3570:236:0", + "src": "3692:236:0", "statements": [ { "expression": { - "id": 210, + "id": 223, "isConstant": false, "isLValue": false, "isPure": false, @@ -19227,25 +18936,25 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 201, + "id": 214, "name": "values", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "3580:6:0", + "referencedDeclaration": 95, + "src": "3702:6:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" } }, - "id": 204, + "id": 217, "indexExpression": { - "id": 202, + "id": 215, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "3587:8:0", + "referencedDeclaration": 209, + "src": "3709:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19256,20 +18965,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3580:16:0", + "src": "3702:16:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", "typeString": "mapping(uint256 => bytes storage ref)" } }, - "id": 205, + "id": 218, "indexExpression": { - "id": 203, + "id": 216, "name": "_timestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 198, - "src": "3597:10:0", + "referencedDeclaration": 211, + "src": "3719:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19280,7 +18989,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3580:28:0", + "src": "3702:28:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" @@ -19292,14 +19001,14 @@ "arguments": [ { "hexValue": "", - "id": 208, + "id": 221, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3617:2:0", + "src": "3739:2:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -19314,26 +19023,26 @@ "typeString": "literal_string \"\"" } ], - "id": 207, + "id": 220, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3611:5:0", + "src": "3733:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 206, + "id": 219, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "3611:5:0", + "src": "3733:5:0", "typeDescriptions": {} } }, - "id": 209, + "id": 222, "isConstant": false, "isLValue": false, "isPure": true, @@ -19341,26 +19050,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3611:9:0", + "src": "3733:9:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "src": "3580:40:0", + "src": "3702:40:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 211, + "id": 224, "nodeType": "ExpressionStatement", - "src": "3580:40:0" + "src": "3702:40:0" }, { "expression": { - "id": 218, + "id": 231, "isConstant": false, "isLValue": false, "isPure": false, @@ -19368,25 +19077,25 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 212, + "id": 225, "name": "isDisputed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 71, - "src": "3630:10:0", + "referencedDeclaration": 69, + "src": "3752:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bool_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => bool))" } }, - "id": 215, + "id": 228, "indexExpression": { - "id": 213, + "id": 226, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "3641:8:0", + "referencedDeclaration": 209, + "src": "3763:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19397,20 +19106,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3630:20:0", + "src": "3752:20:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" } }, - "id": 216, + "id": 229, "indexExpression": { - "id": 214, + "id": 227, "name": "_timestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 198, - "src": "3651:10:0", + "referencedDeclaration": 211, + "src": "3773:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19421,7 +19130,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3630:32:0", + "src": "3752:32:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19431,33 +19140,33 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 217, + "id": 230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "3665:4:0", + "src": "3787:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "3630:39:0", + "src": "3752:39:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 219, + "id": 232, "nodeType": "ExpressionStatement", - "src": "3630:39:0" + "src": "3752:39:0" }, { "expression": { - "id": 221, + "id": 234, "isConstant": false, "isLValue": false, "isPure": false, @@ -19465,14 +19174,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "3679:11:0", + "src": "3801:11:0", "subExpression": { - "id": 220, + "id": 233, "name": "voteCount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "3679:9:0", + "referencedDeclaration": 117, + "src": "3801:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19483,20 +19192,20 @@ "typeString": "uint256" } }, - "id": 222, + "id": 235, "nodeType": "ExpressionStatement", - "src": "3679:11:0" + "src": "3801:11:0" }, { "expression": { "arguments": [ { - "id": 233, + "id": 246, "name": "voteCount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "3780:9:0", + "referencedDeclaration": 117, + "src": "3902:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19512,41 +19221,41 @@ ], "expression": { "baseExpression": { - "id": 223, + "id": 236, "name": "voteRounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 102, - "src": "3700:10:0", + "referencedDeclaration": 100, + "src": "3822:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[] storage ref)" } }, - "id": 231, + "id": 244, "indexExpression": { "arguments": [ { "arguments": [ { - "id": 227, + "id": 240, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "3738:8:0", + "referencedDeclaration": 209, + "src": "3860:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 228, + "id": 241, "name": "_timestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 198, - "src": "3748:10:0", + "referencedDeclaration": 211, + "src": "3870:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19565,31 +19274,31 @@ } ], "expression": { - "id": 225, + "id": 238, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "3721:3:0", + "src": "3843:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 226, + "id": 239, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "3721:16:0", + "src": "3843:16:0", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 229, + "id": 242, "isConstant": false, "isLValue": false, "isPure": false, @@ -19597,7 +19306,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3721:38:0", + "src": "3843:38:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -19612,18 +19321,18 @@ "typeString": "bytes memory" } ], - "id": 224, + "id": 237, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "3711:9:0", + "src": "3833:9:0", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 230, + "id": 243, "isConstant": false, "isLValue": false, "isPure": false, @@ -19631,7 +19340,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3711:49:0", + "src": "3833:49:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -19643,26 +19352,26 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3700:61:0", + "src": "3822:61:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "id": 232, + "id": 245, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "3700:66:0", + "src": "3822:66:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_array$_t_uint256_$dyn_storage_ptr_$", "typeString": "function (uint256[] storage pointer,uint256)" } }, - "id": 234, + "id": 247, "isConstant": false, "isLValue": false, "isPure": false, @@ -19670,46 +19379,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3700:99:0", + "src": "3822:99:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 235, + "id": 248, "nodeType": "ExpressionStatement", - "src": "3700:99:0" + "src": "3822:99:0" } ] }, "documentation": { - "id": 194, + "id": 207, "nodeType": "StructuredDocumentation", - "src": "3319:177:0", + "src": "3441:177:0", "text": " @dev A mock function to create a dispute\n @param _queryId The tellorId to be disputed\n @param _timestamp the timestamp of the value to be disputed" }, "functionSelector": "1f379acc", - "id": 237, + "id": 250, "implemented": true, "kind": "function", "modifiers": [], "name": "beginDispute", - "nameLocation": "3510:12:0", + "nameLocation": "3632:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 199, + "id": 212, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 196, + "id": 209, "mutability": "mutable", "name": "_queryId", - "nameLocation": "3531:8:0", + "nameLocation": "3653:8:0", "nodeType": "VariableDeclaration", - "scope": 237, - "src": "3523:16:0", + "scope": 250, + "src": "3645:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19717,10 +19426,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 195, + "id": 208, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3523:7:0", + "src": "3645:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19730,13 +19439,13 @@ }, { "constant": false, - "id": 198, + "id": 211, "mutability": "mutable", "name": "_timestamp", - "nameLocation": "3549:10:0", + "nameLocation": "3671:10:0", "nodeType": "VariableDeclaration", - "scope": 237, - "src": "3541:18:0", + "scope": 250, + "src": "3663:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19744,10 +19453,10 @@ "typeString": "uint256" }, "typeName": { - "id": 197, + "id": 210, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3541:7:0", + "src": "3663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19756,36 +19465,36 @@ "visibility": "internal" } ], - "src": "3522:38:0" + "src": "3644:38:0" }, "returnParameters": { - "id": 200, + "id": 213, "nodeType": "ParameterList", "parameters": [], - "src": "3570:0:0" + "src": "3692:0:0" }, - "scope": 1176, - "src": "3501:305:0", + "scope": 1096, + "src": "3623:305:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 248, + "id": 261, "nodeType": "Block", - "src": "3994:41:0", + "src": "4116:41:0", "statements": [ { "expression": { "arguments": [ { - "id": 244, + "id": 257, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 240, - "src": "4010:5:0", + "referencedDeclaration": 253, + "src": "4132:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19793,14 +19502,14 @@ }, { "hexValue": "31303030", - "id": 245, + "id": 258, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4017:10:0", + "src": "4139:10:0", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000_by_1", @@ -19820,18 +19529,18 @@ "typeString": "int_const 1000000000000000000000" } ], - "id": 243, + "id": 256, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1089, - "src": "4004:5:0", + "referencedDeclaration": 1009, + "src": "4126:5:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 246, + "id": 259, "isConstant": false, "isLValue": false, "isPure": false, @@ -19839,46 +19548,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4004:24:0", + "src": "4126:24:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 247, + "id": 260, "nodeType": "ExpressionStatement", - "src": "4004:24:0" + "src": "4126:24:0" } ] }, "documentation": { - "id": 238, + "id": 251, "nodeType": "StructuredDocumentation", - "src": "3812:137:0", + "src": "3934:137:0", "text": " @dev Public function to mint tokens to the given address\n @param _user The address which will receive the tokens" }, "functionSelector": "b86d1d63", - "id": 249, + "id": 262, "implemented": true, "kind": "function", "modifiers": [], "name": "faucet", - "nameLocation": "3963:6:0", + "nameLocation": "4085:6:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 241, + "id": 254, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 253, "mutability": "mutable", "name": "_user", - "nameLocation": "3978:5:0", + "nameLocation": "4100:5:0", "nodeType": "VariableDeclaration", - "scope": 249, - "src": "3970:13:0", + "scope": 262, + "src": "4092:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19886,10 +19595,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 252, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3970:7:0", + "src": "4092:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -19899,125 +19608,189 @@ "visibility": "internal" } ], - "src": "3969:15:0" + "src": "4091:15:0" }, "returnParameters": { - "id": 242, + "id": 255, "nodeType": "ParameterList", "parameters": [], - "src": "3994:0:0" + "src": "4116:0:0" }, - "scope": 1176, - "src": "3954:81:0", + "scope": 1096, + "src": "4076:81:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 382, + "id": 358, "nodeType": "Block", - "src": "4582:1117:0", + "src": "4704:770:0", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "id": 267, + "id": 284, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 262, - "name": "_nonce", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "4613:6:0", - "typeDescriptions": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 263, - "name": "timestamps", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "4623:10:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", - "typeString": "mapping(bytes32 => uint256[] storage ref)" - } - }, - "id": 265, - "indexExpression": { - "id": 264, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4634:8:0", + }, + "id": 280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 275, + "name": "_nonce", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 269, + "src": "4735:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 276, + "name": "timestamps", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "4745:10:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", + "typeString": "mapping(bytes32 => uint256[] storage ref)" + } + }, + "id": 278, + "indexExpression": { + "id": 277, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 265, + "src": "4756:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4745:20:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_array$_t_uint256_$dyn_storage", + "typeString": "uint256[] storage ref" } }, + "id": 279, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4623:20:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4745:27:0", "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage", - "typeString": "uint256[] storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 266, + "src": "4735:37:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "4623:27:0", + "leftExpression": { + "id": 281, + "name": "_nonce", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 269, + "src": "4776:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4786:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4776:11:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "src": "4613:37:0", + "src": "4735:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "hexValue": "6e6f6e63652073686f756c6420626520636f7272656374", - "id": 268, + "hexValue": "6e6f6e6365206d757374206d617463682074696d657374616d7020696e646578", + "id": 285, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4664:25:0", + "src": "4801:34:0", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", - "typeString": "literal_string \"nonce should be correct\"" + "typeIdentifier": "t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722", + "typeString": "literal_string \"nonce must match timestamp index\"" }, - "value": "nonce should be correct" + "value": "nonce must match timestamp index" } ], "expression": { @@ -20027,11 +19800,11 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_ab27d1ca95a450912d892ee9c3d893b0146216fdccc5866eabe2131882ee8494", - "typeString": "literal_string \"nonce should be correct\"" + "typeIdentifier": "t_stringliteral_7b15e51d279d80d81e1fc0908dcc556966bdf31135ced551977dc05553339722", + "typeString": "literal_string \"nonce must match timestamp index\"" } ], - "id": 261, + "id": 274, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -20039,13 +19812,13 @@ -18 ], "referencedDeclaration": -18, - "src": "4592:7:0", + "src": "4714:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 269, + "id": 286, "isConstant": false, "isLValue": false, "isPure": false, @@ -20053,16 +19826,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4592:107:0", + "src": "4714:131:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 270, + "id": 287, "nodeType": "ExpressionStatement", - "src": "4592:107:0" + "src": "4714:131:0" }, { "expression": { @@ -20072,7 +19845,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 283, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -20082,18 +19855,18 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 276, + "id": 293, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 272, + "id": 289, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4730:8:0", + "referencedDeclaration": 265, + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20104,12 +19877,12 @@ "rightExpression": { "arguments": [ { - "id": 274, + "id": 291, "name": "_queryData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 258, - "src": "4752:10:0", + "referencedDeclaration": 271, + "src": "4898:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -20123,18 +19896,18 @@ "typeString": "bytes memory" } ], - "id": 273, + "id": 290, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "4742:9:0", + "src": "4888:9:0", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 275, + "id": 292, "isConstant": false, "isLValue": false, "isPure": false, @@ -20142,14 +19915,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4742:21:0", + "src": "4888:21:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "4730:33:0", + "src": "4876:33:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20162,7 +19935,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 282, + "id": 299, "isConstant": false, "isLValue": false, "isPure": false, @@ -20170,12 +19943,12 @@ "leftExpression": { "arguments": [ { - "id": 279, + "id": 296, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4775:8:0", + "referencedDeclaration": 265, + "src": "4921:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20189,26 +19962,26 @@ "typeString": "bytes32" } ], - "id": 278, + "id": 295, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4767:7:0", + "src": "4913:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 277, + "id": 294, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4767:7:0", + "src": "4913:7:0", "typeDescriptions": {} } }, - "id": 280, + "id": 297, "isConstant": false, "isLValue": false, "isPure": false, @@ -20216,7 +19989,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4767:17:0", + "src": "4913:17:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -20227,27 +20000,27 @@ "operator": "<=", "rightExpression": { "hexValue": "313030", - "id": 281, + "id": 298, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4788:3:0", + "src": "4934:3:0", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "4767:24:0", + "src": "4913:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "4730:61:0", + "src": "4876:61:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20255,14 +20028,14 @@ }, { "hexValue": "6964206d7573742062652068617368206f662062797465732064617461", - "id": 284, + "id": 301, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4805:31:0", + "src": "4951:31:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", "typeString": "literal_string \"id must be hash of bytes data\"" @@ -20281,7 +20054,7 @@ "typeString": "literal_string \"id must be hash of bytes data\"" } ], - "id": 271, + "id": 288, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -20289,13 +20062,13 @@ -18 ], "referencedDeclaration": -18, - "src": "4709:7:0", + "src": "4855:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 285, + "id": 302, "isConstant": false, "isLValue": false, "isPure": false, @@ -20303,20 +20076,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4709:137:0", + "src": "4855:137:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 286, + "id": 303, "nodeType": "ExpressionStatement", - "src": "4709:137:0" + "src": "4855:137:0" }, { "expression": { - "id": 294, + "id": 311, "isConstant": false, "isLValue": false, "isPure": false, @@ -20324,25 +20097,25 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 287, + "id": 304, "name": "values", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "4856:6:0", + "referencedDeclaration": 95, + "src": "5002:6:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" } }, - "id": 291, + "id": 308, "indexExpression": { - "id": 288, + "id": 305, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4863:8:0", + "referencedDeclaration": 265, + "src": "5009:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20353,34 +20126,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4856:16:0", + "src": "5002:16:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", "typeString": "mapping(uint256 => bytes storage ref)" } }, - "id": 292, + "id": 309, "indexExpression": { "expression": { - "id": 289, + "id": 306, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "4873:5:0", + "src": "5019:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 290, + "id": 307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "4873:15:0", + "src": "5019:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20391,7 +20164,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "4856:33:0", + "src": "5002:33:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" @@ -20400,51 +20173,51 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 293, + "id": 310, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 254, - "src": "4892:6:0", + "referencedDeclaration": 267, + "src": "5038:6:0", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "src": "4856:42:0", + "src": "5002:42:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "id": 295, + "id": 312, "nodeType": "ExpressionStatement", - "src": "4856:42:0" + "src": "5002:42:0" }, { "expression": { "arguments": [ { "expression": { - "id": 300, + "id": 317, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "4934:5:0", + "src": "5080:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 301, + "id": 318, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "4934:15:0", + "src": "5080:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20460,25 +20233,25 @@ ], "expression": { "baseExpression": { - "id": 296, + "id": 313, "name": "timestamps", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "4908:10:0", + "referencedDeclaration": 85, + "src": "5054:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[] storage ref)" } }, - "id": 298, + "id": 315, "indexExpression": { - "id": 297, + "id": 314, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "4919:8:0", + "referencedDeclaration": 265, + "src": "5065:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20489,26 +20262,26 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4908:20:0", + "src": "5054:20:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "id": 299, + "id": 316, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "4908:25:0", + "src": "5054:25:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_array$_t_uint256_$dyn_storage_ptr_$", "typeString": "function (uint256[] storage pointer,uint256)" } }, - "id": 302, + "id": 319, "isConstant": false, "isLValue": false, "isPure": false, @@ -20516,345 +20289,206 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4908:42:0", + "src": "5054:42:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 303, + "id": 320, "nodeType": "ExpressionStatement", - "src": "4908:42:0" + "src": "5054:42:0" }, { - "assignments": [ - 305, - 307 - ], - "declarations": [ - { - "constant": false, - "id": 305, - "mutability": "mutable", - "name": "_tip", - "nameLocation": "5042:4:0", - "nodeType": "VariableDeclaration", - "scope": 382, - "src": "5034:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 304, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5034:7:0", + "expression": { + "id": 329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 321, + "name": "reporterByTimestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 75, + "src": "5106:19:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", + "typeString": "mapping(bytes32 => mapping(uint256 => address))" + } + }, + "id": 325, + "indexExpression": { + "id": 322, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 265, + "src": "5126:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5106:29:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", + "typeString": "mapping(uint256 => address)" } }, - "visibility": "internal" - }, - { - "constant": false, - "id": 307, - "mutability": "mutable", - "name": "_reward", - "nameLocation": "5056:7:0", - "nodeType": "VariableDeclaration", - "scope": 382, - "src": "5048:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 306, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5048:7:0", + "id": 326, + "indexExpression": { + "expression": { + "id": 323, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "5136:5:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 324, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "5136:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "visibility": "internal" - } - ], - "id": 311, - "initialValue": { - "arguments": [ - { - "id": 309, - "name": "_queryId", + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5106:46:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 327, + "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5084:8:0", + "referencedDeclaration": -15, + "src": "5155:3:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_magic_message", + "typeString": "msg" } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 308, - "name": "getCurrentReward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 850, - "src": "5067:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$_t_uint256_$", - "typeString": "function (bytes32) view returns (uint256,uint256)" + }, + "id": 328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5155:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5067:26:0", - "tryCall": false, + "src": "5106:59:0", "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256)" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "nodeType": "VariableDeclarationStatement", - "src": "5033:60:0" + "id": 330, + "nodeType": "ExpressionStatement", + "src": "5106:59:0" }, { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 316, + "expression": { + "id": 338, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 312, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 307, - "src": "5107:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 313, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5117:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5107:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5124:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5107:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 326, - "nodeType": "IfStatement", - "src": "5103:85:0", - "trueBody": { - "id": 325, - "nodeType": "Block", - "src": "5127:61:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 318, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5150:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5150:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 322, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 320, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 307, - "src": "5162:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 321, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5172:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5162:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 331, + "name": "stakerDetails", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "5175:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", + "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" + } + }, + "id": 334, + "indexExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 317, - "name": "transfer", + "id": 332, + "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "5141:8:0", + "referencedDeclaration": -15, + "src": "5189:3:0", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) returns (bool)" + "typeIdentifier": "t_magic_message", + "typeString": "msg" } }, - "id": 323, + "id": 333, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5141:36:0", - "tryCall": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5189:10:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 324, - "nodeType": "ExpressionStatement", - "src": "5141:36:0" - } - ] - } - }, - { - "expression": { - "id": 330, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 327, - "name": "timeOfLastNewValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "5197:18:0", + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5175:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", + "typeString": "struct TellorPlayground.StakeInfo storage ref" + } + }, + "id": 335, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "reporterLastTimestamp", + "nodeType": "MemberAccess", + "referencedDeclaration": 133, + "src": "5175:47:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20864,662 +20498,269 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 328, + "id": 336, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "5218:5:0", + "src": "5225:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 329, + "id": 337, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "5218:15:0", + "src": "5225:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5197:36:0", + "src": "5175:65:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 331, + "id": 339, "nodeType": "ExpressionStatement", - "src": "5197:36:0" + "src": "5175:65:0" }, { "expression": { - "id": 334, + "id": 345, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "id": 332, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5243:14:0", + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5250:44:0", + "subExpression": { + "expression": { + "baseExpression": { + "id": 340, + "name": "stakerDetails", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "5250:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", + "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" + } + }, + "id": 343, + "indexExpression": { + "expression": { + "id": 341, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "5264:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5264:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5250:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", + "typeString": "struct TellorPlayground.StakeInfo storage ref" + } + }, + "id": 344, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "reportsSubmitted", + "nodeType": "MemberAccess", + "referencedDeclaration": 135, + "src": "5250:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 333, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5261:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5243:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 335, + "id": 346, "nodeType": "ExpressionStatement", - "src": "5243:22:0" + "src": "5250:44:0" }, { - "expression": { - "id": 340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 336, - "name": "tips", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "5275:4:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 338, - "indexExpression": { - "id": 337, + "eventCall": { + "arguments": [ + { + "id": 348, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5280:8:0", + "referencedDeclaration": 265, + "src": "5332:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "5275:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5292:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5275:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 341, - "nodeType": "ExpressionStatement", - "src": "5275:18:0" - }, - { - "expression": { - "id": 350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 342, - "name": "reporterByTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "5303:19:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", - "typeString": "mapping(bytes32 => mapping(uint256 => address))" - } - }, - "id": 346, - "indexExpression": { - "id": 343, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5323:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5303:29:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 347, - "indexExpression": { + { "expression": { - "id": 344, + "id": 349, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "5333:5:0", + "src": "5354:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 345, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "5333:15:0", + "src": "5354:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "5303:46:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 348, - "name": "msg", + { + "id": 351, + "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5352:3:0", + "referencedDeclaration": 267, + "src": "5383:6:0", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } }, - "id": 349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5352:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "5303:59:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 351, - "nodeType": "ExpressionStatement", - "src": "5303:59:0" - }, - { - "expression": { - "id": 359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 352, - "name": "stakerDetails", + { + "id": 352, + "name": "_nonce", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 269, + "src": "5403:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 353, + "name": "_queryData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 271, + "src": "5423:10:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "expression": { + "id": 354, + "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "5372:13:0", + "referencedDeclaration": -15, + "src": "5447:3:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" + "typeIdentifier": "t_magic_message", + "typeString": "msg" } }, "id": 355, - "indexExpression": { - "expression": { - "id": 353, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5386:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5386:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5372:25:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5447:10:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } - }, - "id": 356, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "reporterLastTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 139, - "src": "5372:47:0", + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 347, + "name": "NewReport", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23, + "src": "5309:9:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (bytes32,uint256,bytes memory,uint256,bytes memory,address)" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 357, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "5422:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 358, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "5422:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5372:65:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 360, - "nodeType": "ExpressionStatement", - "src": "5372:65:0" - }, - { - "expression": { - "id": 366, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "5447:44:0", - "subExpression": { - "expression": { - "baseExpression": { - "id": 361, - "name": "stakerDetails", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "5447:13:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", - "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" - } - }, - "id": 364, - "indexExpression": { - "expression": { - "id": 362, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5461:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 363, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5461:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5447:25:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", - "typeString": "struct TellorPlayground.StakeInfo storage ref" - } - }, - "id": 365, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "reportsSubmitted", - "nodeType": "MemberAccess", - "referencedDeclaration": 141, - "src": "5447:42:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 367, - "nodeType": "ExpressionStatement", - "src": "5447:44:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 369, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 252, - "src": "5529:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 370, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "5551:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "5551:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 372, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 254, - "src": "5580:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 373, - "name": "_tip", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 305, - "src": "5600:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 374, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 307, - "src": "5607:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5600:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 376, - "name": "_nonce", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "5628:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 377, - "name": "_queryData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 258, - "src": "5648:10:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 378, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5672:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5672:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 368, - "name": "NewReport", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "5506:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_bytes_memory_ptr_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (bytes32,uint256,bytes memory,uint256,uint256,bytes memory,address)" - } - }, - "id": 380, + "id": 356, "isConstant": false, "isLValue": false, "isPure": false, @@ -21527,46 +20768,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5506:186:0", + "src": "5309:158:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 381, + "id": 357, "nodeType": "EmitStatement", - "src": "5501:191:0" + "src": "5304:163:0" } ] }, "documentation": { - "id": 250, + "id": 263, "nodeType": "StructuredDocumentation", - "src": "4041:343:0", + "src": "4163:343:0", "text": " @dev A mock function to submit a value to be read without reporter staking needed\n @param _queryId the ID to associate the value to\n @param _value the value for the queryId\n @param _nonce the current value count for the query id\n @param _queryData the data used by reporters to fulfill the data query" }, "functionSelector": "5eaa9ced", - "id": 383, + "id": 359, "implemented": true, "kind": "function", "modifiers": [], "name": "submitValue", - "nameLocation": "4441:11:0", + "nameLocation": "4563:11:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 259, + "id": 272, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 252, + "id": 265, "mutability": "mutable", "name": "_queryId", - "nameLocation": "4470:8:0", + "nameLocation": "4592:8:0", "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4462:16:0", + "scope": 359, + "src": "4584:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21574,10 +20815,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 251, + "id": 264, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4462:7:0", + "src": "4584:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21587,13 +20828,13 @@ }, { "constant": false, - "id": 254, + "id": 267, "mutability": "mutable", "name": "_value", - "nameLocation": "4503:6:0", + "nameLocation": "4625:6:0", "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4488:21:0", + "scope": 359, + "src": "4610:21:0", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -21601,10 +20842,10 @@ "typeString": "bytes" }, "typeName": { - "id": 253, + "id": 266, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4488:5:0", + "src": "4610:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21614,13 +20855,13 @@ }, { "constant": false, - "id": 256, + "id": 269, "mutability": "mutable", "name": "_nonce", - "nameLocation": "4527:6:0", + "nameLocation": "4649:6:0", "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4519:14:0", + "scope": 359, + "src": "4641:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21628,10 +20869,10 @@ "typeString": "uint256" }, "typeName": { - "id": 255, + "id": 268, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4519:7:0", + "src": "4641:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21641,13 +20882,13 @@ }, { "constant": false, - "id": 258, + "id": 271, "mutability": "mutable", "name": "_queryData", - "nameLocation": "4556:10:0", + "nameLocation": "4678:10:0", "nodeType": "VariableDeclaration", - "scope": 383, - "src": "4543:23:0", + "scope": 359, + "src": "4665:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -21655,10 +20896,10 @@ "typeString": "bytes" }, "typeName": { - "id": 257, + "id": 270, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4543:5:0", + "src": "4665:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21667,25 +20908,25 @@ "visibility": "internal" } ], - "src": "4452:120:0" + "src": "4574:120:0" }, "returnParameters": { - "id": 260, + "id": 273, "nodeType": "ParameterList", "parameters": [], - "src": "4582:0:0" + "src": "4704:0:0" }, - "scope": 1176, - "src": "4432:1267:0", + "scope": 1096, + "src": "4554:920:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 454, + "id": 430, "nodeType": "Block", - "src": "6054:501:0", + "src": "5829:501:0", "statements": [ { "expression": { @@ -21695,7 +20936,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 405, + "id": 381, "isConstant": false, "isLValue": false, "isPure": false, @@ -21705,18 +20946,18 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 398, + "id": 374, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 394, + "id": 370, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6085:8:0", + "referencedDeclaration": 362, + "src": "5860:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21727,12 +20968,12 @@ "rightExpression": { "arguments": [ { - "id": 396, + "id": 372, "name": "_queryData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "6107:10:0", + "referencedDeclaration": 366, + "src": "5882:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -21746,18 +20987,18 @@ "typeString": "bytes memory" } ], - "id": 395, + "id": 371, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "6097:9:0", + "src": "5872:9:0", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 397, + "id": 373, "isConstant": false, "isLValue": false, "isPure": false, @@ -21765,14 +21006,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6097:21:0", + "src": "5872:21:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6085:33:0", + "src": "5860:33:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21785,7 +21026,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 404, + "id": 380, "isConstant": false, "isLValue": false, "isPure": false, @@ -21793,12 +21034,12 @@ "leftExpression": { "arguments": [ { - "id": 401, + "id": 377, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6130:8:0", + "referencedDeclaration": 362, + "src": "5905:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21812,26 +21053,26 @@ "typeString": "bytes32" } ], - "id": 400, + "id": 376, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6122:7:0", + "src": "5897:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 399, + "id": 375, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6122:7:0", + "src": "5897:7:0", "typeDescriptions": {} } }, - "id": 402, + "id": 378, "isConstant": false, "isLValue": false, "isPure": false, @@ -21839,7 +21080,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6122:17:0", + "src": "5897:17:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -21850,27 +21091,27 @@ "operator": "<=", "rightExpression": { "hexValue": "313030", - "id": 403, + "id": 379, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6143:3:0", + "src": "5918:3:0", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "6122:24:0", + "src": "5897:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6085:61:0", + "src": "5860:61:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21878,14 +21119,14 @@ }, { "hexValue": "6964206d7573742062652068617368206f662062797465732064617461", - "id": 406, + "id": 382, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6160:31:0", + "src": "5935:31:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_365165a3cc331b03e63440264952201ac1cbb1ccd5c356779f410908d37b2f0f", "typeString": "literal_string \"id must be hash of bytes data\"" @@ -21904,7 +21145,7 @@ "typeString": "literal_string \"id must be hash of bytes data\"" } ], - "id": 393, + "id": 369, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -21912,13 +21153,13 @@ -18 ], "referencedDeclaration": -18, - "src": "6064:7:0", + "src": "5839:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 407, + "id": 383, "isConstant": false, "isLValue": false, "isPure": false, @@ -21926,41 +21167,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6064:137:0", + "src": "5839:137:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 408, + "id": 384, "nodeType": "ExpressionStatement", - "src": "6064:137:0" + "src": "5839:137:0" }, { "expression": { "arguments": [ { "expression": { - "id": 410, + "id": 386, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "6221:3:0", + "src": "5996:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 411, + "id": 387, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "6221:10:0", + "src": "5996:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21969,14 +21210,14 @@ { "arguments": [ { - "id": 414, + "id": 390, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "6241:4:0", + "src": "6016:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -21984,30 +21225,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 413, + "id": 389, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6233:7:0", + "src": "6008:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 412, + "id": 388, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6233:7:0", + "src": "6008:7:0", "typeDescriptions": {} } }, - "id": 415, + "id": 391, "isConstant": false, "isLValue": false, "isPure": false, @@ -22015,7 +21256,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:13:0", + "src": "6008:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22023,12 +21264,12 @@ } }, { - "id": 416, + "id": 392, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6248:7:0", + "referencedDeclaration": 364, + "src": "6023:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22050,18 +21291,18 @@ "typeString": "uint256" } ], - "id": 409, + "id": 385, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1138, - "src": "6211:9:0", + "referencedDeclaration": 1058, + "src": "5986:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 417, + "id": 393, "isConstant": false, "isLValue": false, "isPure": false, @@ -22069,31 +21310,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6211:45:0", + "src": "5986:45:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 418, + "id": 394, "nodeType": "ExpressionStatement", - "src": "6211:45:0" + "src": "5986:45:0" }, { "expression": { - "id": 423, + "id": 399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 419, + "id": 395, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6266:7:0", + "referencedDeclaration": 364, + "src": "6041:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22106,18 +21347,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 422, + "id": 398, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 420, + "id": 396, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6276:7:0", + "referencedDeclaration": 364, + "src": "6051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22127,35 +21368,35 @@ "operator": "/", "rightExpression": { "hexValue": "32", - "id": 421, + "id": 397, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6286:1:0", + "src": "6061:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "6276:11:0", + "src": "6051:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6266:21:0", + "src": "6041:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 424, + "id": 400, "nodeType": "ExpressionStatement", - "src": "6266:21:0" + "src": "6041:21:0" }, { "expression": { @@ -22163,14 +21404,14 @@ { "arguments": [ { - "id": 428, + "id": 404, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "6311:4:0", + "src": "6086:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -22178,30 +21419,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 427, + "id": 403, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6303:7:0", + "src": "6078:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 426, + "id": 402, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6303:7:0", + "src": "6078:7:0", "typeDescriptions": {} } }, - "id": 429, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -22209,7 +21450,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6303:13:0", + "src": "6078:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22217,12 +21458,12 @@ } }, { - "id": 430, + "id": 406, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6318:7:0", + "referencedDeclaration": 364, + "src": "6093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22240,18 +21481,18 @@ "typeString": "uint256" } ], - "id": 425, + "id": 401, "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1051, - "src": "6297:5:0", + "referencedDeclaration": 971, + "src": "6072:5:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 431, + "id": 407, "isConstant": false, "isLValue": false, "isPure": false, @@ -22259,31 +21500,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6297:29:0", + "src": "6072:29:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 432, + "id": 408, "nodeType": "ExpressionStatement", - "src": "6297:29:0" + "src": "6072:29:0" }, { "expression": { - "id": 435, + "id": 411, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 433, + "id": 409, "name": "tipsInContract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "6336:14:0", + "referencedDeclaration": 115, + "src": "6111:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22292,55 +21533,55 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 434, + "id": 410, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6354:7:0", + "referencedDeclaration": 364, + "src": "6129:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6336:25:0", + "src": "6111:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 436, + "id": 412, "nodeType": "ExpressionStatement", - "src": "6336:25:0" + "src": "6111:25:0" }, { "expression": { - "id": 441, + "id": 417, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 437, + "id": 413, "name": "tips", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "6371:4:0", + "referencedDeclaration": 89, + "src": "6146:4:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 439, + "id": 415, "indexExpression": { - "id": 438, + "id": 414, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6376:8:0", + "referencedDeclaration": 362, + "src": "6151:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22351,7 +21592,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6371:14:0", + "src": "6146:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22360,75 +21601,75 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 440, + "id": 416, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6389:7:0", + "referencedDeclaration": 364, + "src": "6164:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6371:25:0", + "src": "6146:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 442, + "id": 418, "nodeType": "ExpressionStatement", - "src": "6371:25:0" + "src": "6146:25:0" }, { "eventCall": { "arguments": [ { "expression": { - "id": 444, + "id": 420, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "6433:3:0", + "src": "6208:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 445, + "id": 421, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "6433:10:0", + "src": "6208:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 446, + "id": 422, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6457:8:0", + "referencedDeclaration": 362, + "src": "6232:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 447, + "id": 423, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "6479:7:0", + "referencedDeclaration": 364, + "src": "6254:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22436,25 +21677,25 @@ }, { "baseExpression": { - "id": 448, + "id": 424, "name": "tips", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "6500:4:0", + "referencedDeclaration": 89, + "src": "6275:4:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 450, + "id": 426, "indexExpression": { - "id": 449, + "id": 425, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6505:8:0", + "referencedDeclaration": 362, + "src": "6280:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22465,19 +21706,19 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6500:14:0", + "src": "6275:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 451, + "id": 427, "name": "_queryData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "6528:10:0", + "referencedDeclaration": 366, + "src": "6303:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -22507,18 +21748,18 @@ "typeString": "bytes memory" } ], - "id": 443, + "id": 419, "name": "TipAdded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 43, - "src": "6411:8:0", + "referencedDeclaration": 41, + "src": "6186:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes32_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (address,bytes32,uint256,uint256,bytes memory)" } }, - "id": 452, + "id": 428, "isConstant": false, "isLValue": false, "isPure": false, @@ -22526,46 +21767,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6411:137:0", + "src": "6186:137:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 453, + "id": 429, "nodeType": "EmitStatement", - "src": "6406:142:0" + "src": "6181:142:0" } ] }, "documentation": { - "id": 384, + "id": 360, "nodeType": "StructuredDocumentation", - "src": "5705:227:0", + "src": "5480:227:0", "text": " @dev Adds a tip to a given query ID.\n @param _queryId is the queryId to look up\n @param _amount is the amount of tips\n @param _queryData is the extra bytes data needed to fulfill the request" }, "functionSelector": "ef0234ad", - "id": 455, + "id": 431, "implemented": true, "kind": "function", "modifiers": [], "name": "tipQuery", - "nameLocation": "5946:8:0", + "nameLocation": "5721:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 391, + "id": 367, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 386, + "id": 362, "mutability": "mutable", "name": "_queryId", - "nameLocation": "5972:8:0", + "nameLocation": "5747:8:0", "nodeType": "VariableDeclaration", - "scope": 455, - "src": "5964:16:0", + "scope": 431, + "src": "5739:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22573,10 +21814,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 385, + "id": 361, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5964:7:0", + "src": "5739:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22586,13 +21827,13 @@ }, { "constant": false, - "id": 388, + "id": 364, "mutability": "mutable", "name": "_amount", - "nameLocation": "5998:7:0", + "nameLocation": "5773:7:0", "nodeType": "VariableDeclaration", - "scope": 455, - "src": "5990:15:0", + "scope": 431, + "src": "5765:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22600,10 +21841,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 363, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5990:7:0", + "src": "5765:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22613,13 +21854,13 @@ }, { "constant": false, - "id": 390, + "id": 366, "mutability": "mutable", "name": "_queryData", - "nameLocation": "6028:10:0", + "nameLocation": "5803:10:0", "nodeType": "VariableDeclaration", - "scope": 455, - "src": "6015:23:0", + "scope": 431, + "src": "5790:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -22627,10 +21868,10 @@ "typeString": "bytes" }, "typeName": { - "id": 389, + "id": 365, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "6015:5:0", + "src": "5790:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -22639,74 +21880,74 @@ "visibility": "internal" } ], - "src": "5954:90:0" + "src": "5729:90:0" }, "returnParameters": { - "id": 392, + "id": 368, "nodeType": "ParameterList", "parameters": [], - "src": "6054:0:0" + "src": "5829:0:0" }, - "scope": 1176, - "src": "5937:618:0", + "scope": 1096, + "src": "5712:618:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 474, + "id": 450, "nodeType": "Block", - "src": "6914:80:0", + "src": "6689:80:0", "statements": [ { "expression": { "arguments": [ { "expression": { - "id": 466, + "id": 442, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "6934:3:0", + "src": "6709:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 467, + "id": 443, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "6934:10:0", + "src": "6709:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 468, + "id": 444, "name": "_recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "6946:10:0", + "referencedDeclaration": 434, + "src": "6721:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 469, + "id": 445, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6958:7:0", + "referencedDeclaration": 436, + "src": "6733:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22728,18 +21969,18 @@ "typeString": "uint256" } ], - "id": 465, + "id": 441, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1138, - "src": "6924:9:0", + "referencedDeclaration": 1058, + "src": "6699:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 470, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -22747,68 +21988,68 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6924:42:0", + "src": "6699:42:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 447, "nodeType": "ExpressionStatement", - "src": "6924:42:0" + "src": "6699:42:0" }, { "expression": { "hexValue": "74727565", - "id": 472, + "id": 448, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6983:4:0", + "src": "6758:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 464, - "id": 473, + "functionReturnParameters": 440, + "id": 449, "nodeType": "Return", - "src": "6976:11:0" + "src": "6751:11:0" } ] }, "documentation": { - "id": 456, + "id": 432, "nodeType": "StructuredDocumentation", - "src": "6561:235:0", + "src": "6336:235:0", "text": " @dev Transfer tokens from one user to another\n @param _recipient The destination address\n @param _amount The amount of tokens, including decimals, to transfer\n @return bool If the transfer succeeded" }, "functionSelector": "a9059cbb", - "id": 475, + "id": 451, "implemented": true, "kind": "function", "modifiers": [], "name": "transfer", - "nameLocation": "6810:8:0", + "nameLocation": "6585:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 437, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 458, + "id": 434, "mutability": "mutable", "name": "_recipient", - "nameLocation": "6827:10:0", + "nameLocation": "6602:10:0", "nodeType": "VariableDeclaration", - "scope": 475, - "src": "6819:18:0", + "scope": 451, + "src": "6594:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22816,10 +22057,10 @@ "typeString": "address" }, "typeName": { - "id": 457, + "id": 433, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6819:7:0", + "src": "6594:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22830,13 +22071,13 @@ }, { "constant": false, - "id": 460, + "id": 436, "mutability": "mutable", "name": "_amount", - "nameLocation": "6847:7:0", + "nameLocation": "6622:7:0", "nodeType": "VariableDeclaration", - "scope": 475, - "src": "6839:15:0", + "scope": 451, + "src": "6614:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22844,10 +22085,10 @@ "typeString": "uint256" }, "typeName": { - "id": 459, + "id": 435, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6839:7:0", + "src": "6614:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22856,21 +22097,21 @@ "visibility": "internal" } ], - "src": "6818:37:0" + "src": "6593:37:0" }, "returnParameters": { - "id": 464, + "id": 440, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 463, + "id": 439, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 475, - "src": "6904:4:0", + "scope": 451, + "src": "6679:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22878,10 +22119,10 @@ "typeString": "bool" }, "typeName": { - "id": 462, + "id": 438, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6904:4:0", + "src": "6679:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22890,54 +22131,54 @@ "visibility": "internal" } ], - "src": "6903:6:0" + "src": "6678:6:0" }, - "scope": 1176, - "src": "6801:193:0", + "scope": 1096, + "src": "6576:193:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { "body": { - "id": 509, + "id": 485, "nodeType": "Block", - "src": "7414:206:0", + "src": "7189:206:0", "statements": [ { "expression": { "arguments": [ { - "id": 488, + "id": 464, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 478, - "src": "7434:7:0", + "referencedDeclaration": 454, + "src": "7209:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 489, + "id": 465, "name": "_recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 480, - "src": "7443:10:0", + "referencedDeclaration": 456, + "src": "7218:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 490, + "id": 466, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 482, - "src": "7455:7:0", + "referencedDeclaration": 458, + "src": "7230:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22959,18 +22200,18 @@ "typeString": "uint256" } ], - "id": 487, + "id": 463, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1138, - "src": "7424:9:0", + "referencedDeclaration": 1058, + "src": "7199:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 491, + "id": 467, "isConstant": false, "isLValue": false, "isPure": false, @@ -22978,27 +22219,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7424:39:0", + "src": "7199:39:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 492, + "id": 468, "nodeType": "ExpressionStatement", - "src": "7424:39:0" + "src": "7199:39:0" }, { "expression": { "arguments": [ { - "id": 494, + "id": 470, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 478, - "src": "7495:7:0", + "referencedDeclaration": 454, + "src": "7270:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23006,25 +22247,25 @@ }, { "expression": { - "id": 495, + "id": 471, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "7516:3:0", + "src": "7291:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 496, + "id": 472, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7516:10:0", + "src": "7291:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23035,7 +22276,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 504, + "id": 480, "isConstant": false, "isLValue": false, "isPure": false, @@ -23043,25 +22284,25 @@ "leftExpression": { "baseExpression": { "baseExpression": { - "id": 497, + "id": 473, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "7540:11:0", + "referencedDeclaration": 106, + "src": "7315:11:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 499, + "id": 475, "indexExpression": { - "id": 498, + "id": 474, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 478, - "src": "7552:7:0", + "referencedDeclaration": 454, + "src": "7327:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23072,34 +22313,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7540:20:0", + "src": "7315:20:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 502, + "id": 478, "indexExpression": { "expression": { - "id": 500, + "id": 476, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "7561:3:0", + "src": "7336:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 501, + "id": 477, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7561:10:0", + "src": "7336:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23110,7 +22351,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7540:32:0", + "src": "7315:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23119,18 +22360,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 503, + "id": 479, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 482, - "src": "7575:7:0", + "referencedDeclaration": 458, + "src": "7350:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7540:42:0", + "src": "7315:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23152,18 +22393,18 @@ "typeString": "uint256" } ], - "id": 493, + "id": 469, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1013, - "src": "7473:8:0", + "referencedDeclaration": 933, + "src": "7248:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 505, + "id": 481, "isConstant": false, "isLValue": false, "isPure": false, @@ -23171,68 +22412,68 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7473:119:0", + "src": "7248:119:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 506, + "id": 482, "nodeType": "ExpressionStatement", - "src": "7473:119:0" + "src": "7248:119:0" }, { "expression": { "hexValue": "74727565", - "id": 507, + "id": 483, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7609:4:0", + "src": "7384:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 486, - "id": 508, + "functionReturnParameters": 462, + "id": 484, "nodeType": "Return", - "src": "7602:11:0" + "src": "7377:11:0" } ] }, "documentation": { - "id": 476, + "id": 452, "nodeType": "StructuredDocumentation", - "src": "7000:273:0", + "src": "6775:273:0", "text": " @dev Transfer tokens from user to another\n @param _sender The address which owns the tokens\n @param _recipient The destination address\n @param _amount The quantity of tokens to transfer\n @return bool Whether the transfer succeeded" }, "functionSelector": "23b872dd", - "id": 510, + "id": 486, "implemented": true, "kind": "function", "modifiers": [], "name": "transferFrom", - "nameLocation": "7287:12:0", + "nameLocation": "7062:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 483, + "id": 459, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 478, + "id": 454, "mutability": "mutable", "name": "_sender", - "nameLocation": "7317:7:0", + "nameLocation": "7092:7:0", "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7309:15:0", + "scope": 486, + "src": "7084:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23240,10 +22481,10 @@ "typeString": "address" }, "typeName": { - "id": 477, + "id": 453, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7309:7:0", + "src": "7084:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -23254,13 +22495,13 @@ }, { "constant": false, - "id": 480, + "id": 456, "mutability": "mutable", "name": "_recipient", - "nameLocation": "7342:10:0", + "nameLocation": "7117:10:0", "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7334:18:0", + "scope": 486, + "src": "7109:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23268,10 +22509,10 @@ "typeString": "address" }, "typeName": { - "id": 479, + "id": 455, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7334:7:0", + "src": "7109:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -23282,13 +22523,13 @@ }, { "constant": false, - "id": 482, + "id": 458, "mutability": "mutable", "name": "_amount", - "nameLocation": "7370:7:0", + "nameLocation": "7145:7:0", "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7362:15:0", + "scope": 486, + "src": "7137:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23296,10 +22537,10 @@ "typeString": "uint256" }, "typeName": { - "id": 481, + "id": 457, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7362:7:0", + "src": "7137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23308,21 +22549,21 @@ "visibility": "internal" } ], - "src": "7299:84:0" + "src": "7074:84:0" }, "returnParameters": { - "id": 486, + "id": 462, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 485, + "id": 461, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 510, - "src": "7408:4:0", + "scope": 486, + "src": "7183:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23330,10 +22571,10 @@ "typeString": "bool" }, "typeName": { - "id": 484, + "id": 460, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "7408:4:0", + "src": "7183:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23342,96 +22583,96 @@ "visibility": "internal" } ], - "src": "7407:6:0" + "src": "7182:6:0" }, - "scope": 1176, - "src": "7278:342:0", + "scope": 1096, + "src": "7053:342:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { "body": { - "id": 596, + "id": 572, "nodeType": "Block", - "src": "7803:799:0", + "src": "7578:799:0", "statements": [ { "assignments": [ - 518 + 494 ], "declarations": [ { "constant": false, - "id": 518, + "id": 494, "mutability": "mutable", "name": "_staker", - "nameLocation": "7831:7:0", + "nameLocation": "7606:7:0", "nodeType": "VariableDeclaration", - "scope": 596, - "src": "7813:25:0", + "scope": 572, + "src": "7588:25:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" }, "typeName": { - "id": 517, + "id": 493, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 516, + "id": 492, "name": "StakeInfo", "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "7813:9:0" + "referencedDeclaration": 136, + "src": "7588:9:0" }, - "referencedDeclaration": 142, - "src": "7813:9:0", + "referencedDeclaration": 136, + "src": "7588:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" } }, "visibility": "internal" } ], - "id": 523, + "id": 499, "initialValue": { "baseExpression": { - "id": 519, + "id": 495, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "7841:13:0", + "referencedDeclaration": 80, + "src": "7616:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 522, + "id": 498, "indexExpression": { "expression": { - "id": 520, + "id": 496, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "7855:3:0", + "src": "7630:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 521, + "id": 497, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "7855:10:0", + "src": "7630:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23442,14 +22683,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7841:25:0", + "src": "7616:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7813:53:0" + "src": "7588:53:0" }, { "condition": { @@ -23457,33 +22698,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 527, + "id": 503, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 524, + "id": 500, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "7880:7:0", + "referencedDeclaration": 494, + "src": "7655:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 525, + "id": 501, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "7880:21:0", + "referencedDeclaration": 131, + "src": "7655:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23493,30 +22734,30 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 526, + "id": 502, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7904:1:0", + "src": "7679:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7880:25:0", + "src": "7655:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 575, + "id": 551, "nodeType": "Block", - "src": "8336:83:0", + "src": "8111:83:0", "statements": [ { "expression": { @@ -23525,25 +22766,25 @@ "arguments": [ { "expression": { - "id": 565, + "id": 541, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "8372:3:0", + "src": "8147:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 566, + "id": 542, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "8372:10:0", + "src": "8147:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23552,14 +22793,14 @@ { "arguments": [ { - "id": 569, + "id": 545, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "8392:4:0", + "src": "8167:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -23567,30 +22808,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 568, + "id": 544, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8384:7:0", + "src": "8159:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 567, + "id": 543, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8384:7:0", + "src": "8159:7:0", "typeDescriptions": {} } }, - "id": 570, + "id": 546, "isConstant": false, "isLValue": false, "isPure": false, @@ -23598,7 +22839,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8384:13:0", + "src": "8159:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23606,12 +22847,12 @@ } }, { - "id": 571, + "id": 547, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8399:7:0", + "referencedDeclaration": 489, + "src": "8174:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23633,18 +22874,18 @@ "typeString": "uint256" } ], - "id": 564, + "id": 540, "name": "_transferFrom", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "8358:13:0", + "referencedDeclaration": 1095, + "src": "8133:13:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) returns (bool)" } }, - "id": 572, + "id": 548, "isConstant": false, "isLValue": false, "isPure": false, @@ -23652,7 +22893,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8358:49:0", + "src": "8133:49:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23667,7 +22908,7 @@ "typeString": "bool" } ], - "id": 563, + "id": 539, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23675,13 +22916,13 @@ -18 ], "referencedDeclaration": -18, - "src": "8350:7:0", + "src": "8125:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 573, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -23689,26 +22930,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8350:58:0", + "src": "8125:58:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 574, + "id": 550, "nodeType": "ExpressionStatement", - "src": "8350:58:0" + "src": "8125:58:0" } ] }, - "id": 576, + "id": 552, "nodeType": "IfStatement", - "src": "7876:543:0", + "src": "7651:543:0", "trueBody": { - "id": 562, + "id": 538, "nodeType": "Block", - "src": "7907:423:0", + "src": "7682:423:0", "statements": [ { "condition": { @@ -23716,33 +22957,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 531, + "id": 507, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 528, + "id": 504, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "7925:7:0", + "referencedDeclaration": 494, + "src": "7700:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 529, + "id": 505, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "7925:21:0", + "referencedDeclaration": 131, + "src": "7700:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23751,27 +22992,27 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 530, + "id": 506, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "7950:7:0", + "referencedDeclaration": 489, + "src": "7725:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7925:32:0", + "src": "7700:32:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 560, + "id": 536, "nodeType": "Block", - "src": "8030:290:0", + "src": "7805:290:0", "statements": [ { "expression": { @@ -23780,25 +23021,25 @@ "arguments": [ { "expression": { - "id": 541, + "id": 517, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "8116:3:0", + "src": "7891:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 542, + "id": 518, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "8116:10:0", + "src": "7891:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23807,14 +23048,14 @@ { "arguments": [ { - "id": 545, + "id": 521, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "8160:4:0", + "src": "7935:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -23822,30 +23063,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 544, + "id": 520, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8152:7:0", + "src": "7927:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 543, + "id": 519, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8152:7:0", + "src": "7927:7:0", "typeDescriptions": {} } }, - "id": 546, + "id": 522, "isConstant": false, "isLValue": false, "isPure": false, @@ -23853,7 +23094,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8152:13:0", + "src": "7927:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23865,18 +23106,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 550, + "id": 526, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 547, + "id": 523, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8191:7:0", + "referencedDeclaration": 489, + "src": "7966:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23886,32 +23127,32 @@ "operator": "-", "rightExpression": { "expression": { - "id": 548, + "id": 524, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8201:7:0", + "referencedDeclaration": 494, + "src": "7976:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 549, + "id": 525, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "8201:21:0", + "referencedDeclaration": 131, + "src": "7976:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8191:31:0", + "src": "7966:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23933,18 +23174,18 @@ "typeString": "uint256" } ], - "id": 540, + "id": 516, "name": "_transferFrom", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "8077:13:0", + "referencedDeclaration": 1095, + "src": "7852:13:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) returns (bool)" } }, - "id": 551, + "id": 527, "isConstant": false, "isLValue": false, "isPure": false, @@ -23952,7 +23193,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8077:167:0", + "src": "7852:167:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23967,7 +23208,7 @@ "typeString": "bool" } ], - "id": 539, + "id": 515, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23975,13 +23216,13 @@ -18 ], "referencedDeclaration": -18, - "src": "8048:7:0", + "src": "7823:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 552, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -23989,46 +23230,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8048:214:0", + "src": "7823:214:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 553, + "id": 529, "nodeType": "ExpressionStatement", - "src": "8048:214:0" + "src": "7823:214:0" }, { "expression": { - "id": 558, + "id": 534, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 554, + "id": 530, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8280:7:0", + "referencedDeclaration": 494, + "src": "8055:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 556, + "id": 532, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "8280:21:0", + "referencedDeclaration": 131, + "src": "8055:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24038,69 +23279,69 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 557, + "id": 533, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8304:1:0", + "src": "8079:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "8280:25:0", + "src": "8055:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 559, + "id": 535, "nodeType": "ExpressionStatement", - "src": "8280:25:0" + "src": "8055:25:0" } ] }, - "id": 561, + "id": 537, "nodeType": "IfStatement", - "src": "7921:399:0", + "src": "7696:399:0", "trueBody": { - "id": 538, + "id": 514, "nodeType": "Block", - "src": "7959:65:0", + "src": "7734:65:0", "statements": [ { "expression": { - "id": 536, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 532, + "id": 508, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "7977:7:0", + "referencedDeclaration": 494, + "src": "7752:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 534, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "7977:21:0", + "referencedDeclaration": 131, + "src": "7752:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24109,26 +23350,26 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 535, + "id": 511, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8002:7:0", + "referencedDeclaration": 489, + "src": "7777:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7977:32:0", + "src": "7752:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 537, + "id": 513, "nodeType": "ExpressionStatement", - "src": "7977:32:0" + "src": "7752:32:0" } ] } @@ -24138,33 +23379,33 @@ }, { "expression": { - "id": 582, + "id": 558, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 577, + "id": 553, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8428:7:0", + "referencedDeclaration": 494, + "src": "8203:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 579, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "startDate", "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "8428:17:0", + "referencedDeclaration": 127, + "src": "8203:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24174,69 +23415,69 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 580, + "id": 556, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "8448:5:0", + "src": "8223:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 581, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "8448:15:0", + "src": "8223:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8428:35:0", + "src": "8203:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 583, + "id": 559, "nodeType": "ExpressionStatement", - "src": "8428:35:0" + "src": "8203:35:0" }, { "expression": { - "id": 588, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 584, + "id": 560, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "8518:7:0", + "referencedDeclaration": 494, + "src": "8293:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 586, + "id": 562, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "stakedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "8518:21:0", + "referencedDeclaration": 129, + "src": "8293:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24245,63 +23486,63 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 587, + "id": 563, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8543:7:0", + "referencedDeclaration": 489, + "src": "8318:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8518:32:0", + "src": "8293:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 589, + "id": 565, "nodeType": "ExpressionStatement", - "src": "8518:32:0" + "src": "8293:32:0" }, { "eventCall": { "arguments": [ { "expression": { - "id": 591, + "id": 567, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "8575:3:0", + "src": "8350:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 592, + "id": 568, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "8575:10:0", + "src": "8350:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 593, + "id": 569, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 513, - "src": "8587:7:0", + "referencedDeclaration": 489, + "src": "8362:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24319,18 +23560,18 @@ "typeString": "uint256" } ], - "id": 590, + "id": 566, "name": "NewStaker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "8565:9:0", + "referencedDeclaration": 29, + "src": "8340:9:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 594, + "id": 570, "isConstant": false, "isLValue": false, "isPure": false, @@ -24338,46 +23579,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8565:30:0", + "src": "8340:30:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 595, + "id": 571, "nodeType": "EmitStatement", - "src": "8560:35:0" + "src": "8335:35:0" } ] }, "documentation": { - "id": 511, + "id": 487, "nodeType": "StructuredDocumentation", - "src": "7645:105:0", + "src": "7420:105:0", "text": " @dev Allows a reporter to submit stake\n @param _amount amount of tokens to stake" }, "functionSelector": "cb82cc8f", - "id": 597, + "id": 573, "implemented": true, "kind": "function", "modifiers": [], "name": "depositStake", - "nameLocation": "7764:12:0", + "nameLocation": "7539:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 514, + "id": 490, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 513, + "id": 489, "mutability": "mutable", "name": "_amount", - "nameLocation": "7785:7:0", + "nameLocation": "7560:7:0", "nodeType": "VariableDeclaration", - "scope": 597, - "src": "7777:15:0", + "scope": 573, + "src": "7552:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24385,10 +23626,10 @@ "typeString": "uint256" }, "typeName": { - "id": 512, + "id": 488, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7777:7:0", + "src": "7552:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24397,102 +23638,102 @@ "visibility": "internal" } ], - "src": "7776:17:0" + "src": "7551:17:0" }, "returnParameters": { - "id": 515, + "id": 491, "nodeType": "ParameterList", "parameters": [], - "src": "7803:0:0" + "src": "7578:0:0" }, - "scope": 1176, - "src": "7755:847:0", + "scope": 1096, + "src": "7530:847:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 644, + "id": 620, "nodeType": "Block", - "src": "8816:373:0", + "src": "8591:373:0", "statements": [ { "assignments": [ - 605 + 581 ], "declarations": [ { "constant": false, - "id": 605, + "id": 581, "mutability": "mutable", "name": "_staker", - "nameLocation": "8844:7:0", + "nameLocation": "8619:7:0", "nodeType": "VariableDeclaration", - "scope": 644, - "src": "8826:25:0", + "scope": 620, + "src": "8601:25:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" }, "typeName": { - "id": 604, + "id": 580, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 603, + "id": 579, "name": "StakeInfo", "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "8826:9:0" + "referencedDeclaration": 136, + "src": "8601:9:0" }, - "referencedDeclaration": 142, - "src": "8826:9:0", + "referencedDeclaration": 136, + "src": "8601:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" } }, "visibility": "internal" } ], - "id": 610, + "id": 586, "initialValue": { "baseExpression": { - "id": 606, + "id": 582, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "8854:13:0", + "referencedDeclaration": 80, + "src": "8629:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 609, + "id": 585, "indexExpression": { "expression": { - "id": 607, + "id": 583, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "8868:3:0", + "src": "8643:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 608, + "id": 584, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "8868:10:0", + "src": "8643:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24503,14 +23744,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8854:25:0", + "src": "8629:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "8826:53:0" + "src": "8601:53:0" }, { "expression": { @@ -24520,33 +23761,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 615, + "id": 591, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 612, + "id": 588, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "8910:7:0", + "referencedDeclaration": 581, + "src": "8685:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 613, + "id": 589, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stakedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "8910:21:0", + "referencedDeclaration": 129, + "src": "8685:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24555,18 +23796,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 614, + "id": 590, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "8935:7:0", + "referencedDeclaration": 576, + "src": "8710:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8910:32:0", + "src": "8685:32:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24574,14 +23815,14 @@ }, { "hexValue": "696e73756666696369656e74207374616b65642062616c616e6365", - "id": 616, + "id": 592, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8956:29:0", + "src": "8731:29:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d8d4cb8e01b84ee20a4e50dd6369720cccce60f70a5f340975bb2a78d6c776db", "typeString": "literal_string \"insufficient staked balance\"" @@ -24600,7 +23841,7 @@ "typeString": "literal_string \"insufficient staked balance\"" } ], - "id": 611, + "id": 587, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -24608,13 +23849,13 @@ -18 ], "referencedDeclaration": -18, - "src": "8889:7:0", + "src": "8664:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 617, + "id": 593, "isConstant": false, "isLValue": false, "isPure": false, @@ -24622,46 +23863,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8889:106:0", + "src": "8664:106:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 618, + "id": 594, "nodeType": "ExpressionStatement", - "src": "8889:106:0" + "src": "8664:106:0" }, { "expression": { - "id": 624, + "id": 600, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 619, + "id": 595, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "9005:7:0", + "referencedDeclaration": 581, + "src": "8780:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 621, + "id": 597, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "startDate", "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "9005:17:0", + "referencedDeclaration": 127, + "src": "8780:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24671,69 +23912,69 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 622, + "id": 598, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "9025:5:0", + "src": "8800:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 623, + "id": 599, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "9025:15:0", + "src": "8800:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9005:35:0", + "src": "8780:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 625, + "id": 601, "nodeType": "ExpressionStatement", - "src": "9005:35:0" + "src": "8780:35:0" }, { "expression": { - "id": 630, + "id": 606, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 626, + "id": 602, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "9050:7:0", + "referencedDeclaration": 581, + "src": "8825:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 628, + "id": 604, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9050:21:0", + "referencedDeclaration": 131, + "src": "8825:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24742,56 +23983,56 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 629, + "id": 605, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "9075:7:0", + "referencedDeclaration": 576, + "src": "8850:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9050:32:0", + "src": "8825:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 631, + "id": 607, "nodeType": "ExpressionStatement", - "src": "9050:32:0" + "src": "8825:32:0" }, { "expression": { - "id": 636, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 632, + "id": 608, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 605, - "src": "9092:7:0", + "referencedDeclaration": 581, + "src": "8867:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 634, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "stakedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "9092:21:0", + "referencedDeclaration": 129, + "src": "8867:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24800,63 +24041,63 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 635, + "id": 611, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "9117:7:0", + "referencedDeclaration": 576, + "src": "8892:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9092:32:0", + "src": "8867:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 637, + "id": 613, "nodeType": "ExpressionStatement", - "src": "9092:32:0" + "src": "8867:32:0" }, { "eventCall": { "arguments": [ { "expression": { - "id": 639, + "id": 615, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "9162:3:0", + "src": "8937:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 640, + "id": 616, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "9162:10:0", + "src": "8937:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 641, + "id": 617, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 600, - "src": "9174:7:0", + "referencedDeclaration": 576, + "src": "8949:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24874,18 +24115,18 @@ "typeString": "uint256" } ], - "id": 638, + "id": 614, "name": "StakeWithdrawRequested", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 49, - "src": "9139:22:0", + "referencedDeclaration": 47, + "src": "8914:22:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 642, + "id": 618, "isConstant": false, "isLValue": false, "isPure": false, @@ -24893,46 +24134,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9139:43:0", + "src": "8914:43:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 643, + "id": 619, "nodeType": "EmitStatement", - "src": "9134:48:0" + "src": "8909:48:0" } ] }, "documentation": { - "id": 598, + "id": 574, "nodeType": "StructuredDocumentation", - "src": "8608:145:0", + "src": "8383:145:0", "text": " @dev Allows a reporter to request to withdraw their stake\n @param _amount amount of staked tokens requesting to withdraw" }, "functionSelector": "8929f4c6", - "id": 645, + "id": 621, "implemented": true, "kind": "function", "modifiers": [], "name": "requestStakingWithdraw", - "nameLocation": "8767:22:0", + "nameLocation": "8542:22:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 601, + "id": 577, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 600, + "id": 576, "mutability": "mutable", "name": "_amount", - "nameLocation": "8798:7:0", + "nameLocation": "8573:7:0", "nodeType": "VariableDeclaration", - "scope": 645, - "src": "8790:15:0", + "scope": 621, + "src": "8565:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24940,10 +24181,10 @@ "typeString": "uint256" }, "typeName": { - "id": 599, + "id": 575, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8790:7:0", + "src": "8565:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24952,102 +24193,102 @@ "visibility": "internal" } ], - "src": "8789:17:0" + "src": "8564:17:0" }, "returnParameters": { - "id": 602, + "id": 578, "nodeType": "ParameterList", "parameters": [], - "src": "8816:0:0" + "src": "8591:0:0" }, - "scope": 1176, - "src": "8758:431:0", + "scope": 1096, + "src": "8533:431:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 698, + "id": 674, "nodeType": "Block", - "src": "9286:427:0", + "src": "9061:427:0", "statements": [ { "assignments": [ - 651 + 627 ], "declarations": [ { "constant": false, - "id": 651, + "id": 627, "mutability": "mutable", "name": "_s", - "nameLocation": "9314:2:0", + "nameLocation": "9089:2:0", "nodeType": "VariableDeclaration", - "scope": 698, - "src": "9296:20:0", + "scope": 674, + "src": "9071:20:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" }, "typeName": { - "id": 650, + "id": 626, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 649, + "id": 625, "name": "StakeInfo", "nodeType": "IdentifierPath", - "referencedDeclaration": 142, - "src": "9296:9:0" + "referencedDeclaration": 136, + "src": "9071:9:0" }, - "referencedDeclaration": 142, - "src": "9296:9:0", + "referencedDeclaration": 136, + "src": "9071:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo" } }, "visibility": "internal" } ], - "id": 656, + "id": 632, "initialValue": { "baseExpression": { - "id": 652, + "id": 628, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "9319:13:0", + "referencedDeclaration": 80, + "src": "9094:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 655, + "id": 631, "indexExpression": { "expression": { - "id": 653, + "id": 629, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "9333:3:0", + "src": "9108:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 654, + "id": 630, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "9333:10:0", + "src": "9108:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25058,14 +24299,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9319:25:0", + "src": "9094:25:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "9296:48:0" + "src": "9071:48:0" }, { "expression": { @@ -25075,7 +24316,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 664, + "id": 640, "isConstant": false, "isLValue": false, "isPure": false, @@ -25085,32 +24326,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 662, + "id": 638, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 658, + "id": 634, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "9431:5:0", + "src": "9206:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 659, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "9431:15:0", + "src": "9206:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25120,32 +24361,32 @@ "operator": "-", "rightExpression": { "expression": { - "id": 660, + "id": 636, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9449:2:0", + "referencedDeclaration": 627, + "src": "9224:2:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 661, + "id": 637, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "startDate", "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "9449:12:0", + "referencedDeclaration": 127, + "src": "9224:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9431:30:0", + "src": "9206:30:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25155,14 +24396,14 @@ "operator": ">=", "rightExpression": { "hexValue": "37", - "id": 663, + "id": 639, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9465:6:0", + "src": "9240:6:0", "subdenomination": "days", "typeDescriptions": { "typeIdentifier": "t_rational_604800_by_1", @@ -25170,7 +24411,7 @@ }, "value": "7" }, - "src": "9431:40:0", + "src": "9206:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25178,14 +24419,14 @@ }, { "hexValue": "372064617973206469646e27742070617373", - "id": 665, + "id": 641, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9473:20:0", + "src": "9248:20:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5164376a34f3fc53325bb8adc1cd7d656523d5ae2d49ee3ed4e8e2f54a5d3790", "typeString": "literal_string \"7 days didn't pass\"" @@ -25204,7 +24445,7 @@ "typeString": "literal_string \"7 days didn't pass\"" } ], - "id": 657, + "id": 633, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -25212,13 +24453,13 @@ -18 ], "referencedDeclaration": -18, - "src": "9423:7:0", + "src": "9198:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 666, + "id": 642, "isConstant": false, "isLValue": false, "isPure": false, @@ -25226,16 +24467,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9423:71:0", + "src": "9198:71:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 667, + "id": 643, "nodeType": "ExpressionStatement", - "src": "9423:71:0" + "src": "9198:71:0" }, { "expression": { @@ -25245,33 +24486,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 672, + "id": 648, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 669, + "id": 645, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9512:2:0", + "referencedDeclaration": 627, + "src": "9287:2:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 670, + "id": 646, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9512:16:0", + "referencedDeclaration": 131, + "src": "9287:16:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25281,21 +24522,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 671, + "id": 647, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9531:1:0", + "src": "9306:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "9512:20:0", + "src": "9287:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25303,14 +24544,14 @@ }, { "hexValue": "7265706f72746572206e6f74206c6f636b656420666f72207769746864726177616c", - "id": 673, + "id": 649, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9534:36:0", + "src": "9309:36:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c41f72c59331ebb81fb9f07a8ed7914d4a048f238f80301189e2a9368bbeb774", "typeString": "literal_string \"reporter not locked for withdrawal\"" @@ -25329,7 +24570,7 @@ "typeString": "literal_string \"reporter not locked for withdrawal\"" } ], - "id": 668, + "id": 644, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -25337,13 +24578,13 @@ -18 ], "referencedDeclaration": -18, - "src": "9504:7:0", + "src": "9279:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 674, + "id": 650, "isConstant": false, "isLValue": false, "isPure": false, @@ -25351,16 +24592,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9504:67:0", + "src": "9279:67:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 675, + "id": 651, "nodeType": "ExpressionStatement", - "src": "9504:67:0" + "src": "9279:67:0" }, { "expression": { @@ -25368,14 +24609,14 @@ { "arguments": [ { - "id": 679, + "id": 655, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "9599:4:0", + "src": "9374:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -25383,30 +24624,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 678, + "id": 654, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9591:7:0", + "src": "9366:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 677, + "id": 653, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9591:7:0", + "src": "9366:7:0", "typeDescriptions": {} } }, - "id": 680, + "id": 656, "isConstant": false, "isLValue": false, "isPure": false, @@ -25414,7 +24655,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9591:13:0", + "src": "9366:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25423,25 +24664,25 @@ }, { "expression": { - "id": 681, + "id": 657, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "9606:3:0", + "src": "9381:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 682, + "id": 658, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "9606:10:0", + "src": "9381:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25449,26 +24690,26 @@ }, { "expression": { - "id": 683, + "id": 659, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9618:2:0", + "referencedDeclaration": 627, + "src": "9393:2:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 684, + "id": 660, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9618:16:0", + "referencedDeclaration": 131, + "src": "9393:16:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25490,18 +24731,18 @@ "typeString": "uint256" } ], - "id": 676, + "id": 652, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1138, - "src": "9581:9:0", + "referencedDeclaration": 1058, + "src": "9356:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 685, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -25509,46 +24750,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9581:54:0", + "src": "9356:54:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 686, + "id": 662, "nodeType": "ExpressionStatement", - "src": "9581:54:0" + "src": "9356:54:0" }, { "expression": { - "id": 691, + "id": 667, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 687, + "id": 663, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "9645:2:0", + "referencedDeclaration": 627, + "src": "9420:2:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage_ptr", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage_ptr", "typeString": "struct TellorPlayground.StakeInfo storage pointer" } }, - "id": 689, + "id": 665, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "9645:16:0", + "referencedDeclaration": 131, + "src": "9420:16:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25558,54 +24799,54 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 690, + "id": 666, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9664:1:0", + "src": "9439:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "9645:20:0", + "src": "9420:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 692, + "id": 668, "nodeType": "ExpressionStatement", - "src": "9645:20:0" + "src": "9420:20:0" }, { "eventCall": { "arguments": [ { "expression": { - "id": 694, + "id": 670, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "9695:3:0", + "src": "9470:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 695, + "id": 671, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "9695:10:0", + "src": "9470:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25619,18 +24860,18 @@ "typeString": "address" } ], - "id": 693, + "id": 669, "name": "StakeWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 53, - "src": "9680:14:0", + "referencedDeclaration": 51, + "src": "9455:14:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 696, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -25638,80 +24879,80 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9680:26:0", + "src": "9455:26:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 697, + "id": 673, "nodeType": "EmitStatement", - "src": "9675:31:0" + "src": "9450:31:0" } ] }, "documentation": { - "id": 646, + "id": 622, "nodeType": "StructuredDocumentation", - "src": "9195:52:0", + "src": "8970:52:0", "text": " @dev Withdraws a reporter's stake" }, "functionSelector": "bed9d861", - "id": 699, + "id": 675, "implemented": true, "kind": "function", "modifiers": [], "name": "withdrawStake", - "nameLocation": "9261:13:0", + "nameLocation": "9036:13:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 647, + "id": 623, "nodeType": "ParameterList", "parameters": [], - "src": "9274:2:0" + "src": "9049:2:0" }, "returnParameters": { - "id": 648, + "id": 624, "nodeType": "ParameterList", "parameters": [], - "src": "9286:0:0" + "src": "9061:0:0" }, - "scope": 1176, - "src": "9252:461:0", + "scope": 1096, + "src": "9027:461:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 715, + "id": 691, "nodeType": "Block", - "src": "10079:65:0", + "src": "9854:65:0", "statements": [ { "expression": { "baseExpression": { "baseExpression": { - "id": 709, + "id": 685, "name": "reporterByTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "10096:19:0", + "referencedDeclaration": 75, + "src": "9871:19:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_address_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => address))" } }, - "id": 711, + "id": 687, "indexExpression": { - "id": 710, + "id": 686, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "10116:8:0", + "referencedDeclaration": 678, + "src": "9891:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25722,20 +24963,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10096:29:0", + "src": "9871:29:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", "typeString": "mapping(uint256 => address)" } }, - "id": 713, + "id": 689, "indexExpression": { - "id": 712, + "id": 688, "name": "_timestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 704, - "src": "10126:10:0", + "referencedDeclaration": 680, + "src": "9901:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25746,46 +24987,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10096:41:0", + "src": "9871:41:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 708, - "id": 714, + "functionReturnParameters": 684, + "id": 690, "nodeType": "Return", - "src": "10089:48:0" + "src": "9864:48:0" } ] }, "documentation": { - "id": 700, + "id": 676, "nodeType": "StructuredDocumentation", - "src": "9719:225:0", + "src": "9494:225:0", "text": " @dev Returns the reporter for a given timestamp and queryId\n @param _queryId bytes32 version of the queryId\n @param _timestamp uint256 timestamp of report\n @return address of data reporter" }, "functionSelector": "e07c5486", - "id": 716, + "id": 692, "implemented": true, "kind": "function", "modifiers": [], "name": "getReporterByTimestamp", - "nameLocation": "9958:22:0", + "nameLocation": "9733:22:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 705, + "id": 681, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 702, + "id": 678, "mutability": "mutable", "name": "_queryId", - "nameLocation": "9989:8:0", + "nameLocation": "9764:8:0", "nodeType": "VariableDeclaration", - "scope": 716, - "src": "9981:16:0", + "scope": 692, + "src": "9756:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25793,10 +25034,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 701, + "id": 677, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "9981:7:0", + "src": "9756:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25806,13 +25047,13 @@ }, { "constant": false, - "id": 704, + "id": 680, "mutability": "mutable", "name": "_timestamp", - "nameLocation": "10007:10:0", + "nameLocation": "9782:10:0", "nodeType": "VariableDeclaration", - "scope": 716, - "src": "9999:18:0", + "scope": 692, + "src": "9774:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25820,10 +25061,10 @@ "typeString": "uint256" }, "typeName": { - "id": 703, + "id": 679, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9999:7:0", + "src": "9774:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25832,21 +25073,21 @@ "visibility": "internal" } ], - "src": "9980:38:0" + "src": "9755:38:0" }, "returnParameters": { - "id": 708, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 707, + "id": 683, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 716, - "src": "10066:7:0", + "scope": 692, + "src": "9841:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25854,10 +25095,10 @@ "typeString": "address" }, "typeName": { - "id": 706, + "id": 682, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10066:7:0", + "src": "9841:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -25867,19 +25108,19 @@ "visibility": "internal" } ], - "src": "10065:9:0" + "src": "9840:9:0" }, - "scope": 1176, - "src": "9949:195:0", + "scope": 1096, + "src": "9724:195:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 754, + "id": 730, "nodeType": "Block", - "src": "10757:291:0", + "src": "10532:291:0", "statements": [ { "expression": { @@ -25887,25 +25128,25 @@ { "expression": { "baseExpression": { - "id": 732, + "id": 708, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10788:13:0", + "referencedDeclaration": 80, + "src": "10563:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 734, + "id": 710, "indexExpression": { - "id": 733, + "id": 709, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10802:7:0", + "referencedDeclaration": 695, + "src": "10577:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25916,21 +25157,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10788:22:0", + "src": "10563:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, - "id": 735, + "id": 711, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "startDate", "nodeType": "MemberAccess", - "referencedDeclaration": 133, - "src": "10788:32:0", + "referencedDeclaration": 127, + "src": "10563:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25939,25 +25180,25 @@ { "expression": { "baseExpression": { - "id": 736, + "id": 712, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10834:13:0", + "referencedDeclaration": 80, + "src": "10609:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 738, + "id": 714, "indexExpression": { - "id": 737, + "id": 713, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10848:7:0", + "referencedDeclaration": 695, + "src": "10623:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25968,21 +25209,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10834:22:0", + "src": "10609:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, - "id": 739, + "id": 715, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stakedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 135, - "src": "10834:36:0", + "referencedDeclaration": 129, + "src": "10609:36:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25991,25 +25232,25 @@ { "expression": { "baseExpression": { - "id": 740, + "id": 716, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10884:13:0", + "referencedDeclaration": 80, + "src": "10659:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 742, + "id": 718, "indexExpression": { - "id": 741, + "id": 717, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10898:7:0", + "referencedDeclaration": 695, + "src": "10673:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26020,21 +25261,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10884:22:0", + "src": "10659:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, - "id": 743, + "id": 719, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "lockedBalance", "nodeType": "MemberAccess", - "referencedDeclaration": 137, - "src": "10884:36:0", + "referencedDeclaration": 131, + "src": "10659:36:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26043,25 +25284,25 @@ { "expression": { "baseExpression": { - "id": 744, + "id": 720, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10934:13:0", + "referencedDeclaration": 80, + "src": "10709:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 746, + "id": 722, "indexExpression": { - "id": 745, + "id": 721, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "10948:7:0", + "referencedDeclaration": 695, + "src": "10723:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26072,21 +25313,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10934:22:0", + "src": "10709:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, - "id": 747, + "id": 723, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "reporterLastTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 139, - "src": "10934:44:0", + "referencedDeclaration": 133, + "src": "10709:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26095,25 +25336,25 @@ { "expression": { "baseExpression": { - "id": 748, + "id": 724, "name": "stakerDetails", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 82, - "src": "10992:13:0", + "referencedDeclaration": 80, + "src": "10767:13:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$142_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_StakeInfo_$136_storage_$", "typeString": "mapping(address => struct TellorPlayground.StakeInfo storage ref)" } }, - "id": 750, + "id": 726, "indexExpression": { - "id": 749, + "id": 725, "name": "_staker", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 719, - "src": "11006:7:0", + "referencedDeclaration": 695, + "src": "10781:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26124,74 +25365,74 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10992:22:0", + "src": "10767:22:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_StakeInfo_$142_storage", + "typeIdentifier": "t_struct$_StakeInfo_$136_storage", "typeString": "struct TellorPlayground.StakeInfo storage ref" } }, - "id": 751, + "id": 727, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "reportsSubmitted", "nodeType": "MemberAccess", - "referencedDeclaration": 141, - "src": "10992:39:0", + "referencedDeclaration": 135, + "src": "10767:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 752, + "id": 728, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10774:267:0", + "src": "10549:267:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)" } }, - "functionReturnParameters": 731, - "id": 753, + "functionReturnParameters": 707, + "id": 729, "nodeType": "Return", - "src": "10767:274:0" + "src": "10542:274:0" } ] }, "documentation": { - "id": 717, + "id": 693, "nodeType": "StructuredDocumentation", - "src": "10150:396:0", + "src": "9925:396:0", "text": " @dev Allows users to retrieve all information about a staker\n @param _staker address of staker inquiring about\n @return uint startDate of staking\n @return uint current amount staked\n @return uint current amount locked for withdrawal\n @return uint reporter's last reported timestamp\n @return uint total number of reports submitted by reporter" }, "functionSelector": "733bdef0", - "id": 755, + "id": 731, "implemented": true, "kind": "function", "modifiers": [], "name": "getStakerInfo", - "nameLocation": "10560:13:0", + "nameLocation": "10335:13:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 720, + "id": 696, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 719, + "id": 695, "mutability": "mutable", "name": "_staker", - "nameLocation": "10582:7:0", + "nameLocation": "10357:7:0", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10574:15:0", + "scope": 731, + "src": "10349:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26199,10 +25440,10 @@ "typeString": "address" }, "typeName": { - "id": 718, + "id": 694, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10574:7:0", + "src": "10349:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -26212,21 +25453,21 @@ "visibility": "internal" } ], - "src": "10573:17:0" + "src": "10348:17:0" }, "returnParameters": { - "id": 731, + "id": 707, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 722, + "id": 698, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10651:7:0", + "scope": 731, + "src": "10426:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26234,10 +25475,10 @@ "typeString": "uint256" }, "typeName": { - "id": 721, + "id": 697, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10651:7:0", + "src": "10426:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26247,13 +25488,13 @@ }, { "constant": false, - "id": 724, + "id": 700, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10672:7:0", + "scope": 731, + "src": "10447:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26261,10 +25502,10 @@ "typeString": "uint256" }, "typeName": { - "id": 723, + "id": 699, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10672:7:0", + "src": "10447:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26274,13 +25515,13 @@ }, { "constant": false, - "id": 726, + "id": 702, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10693:7:0", + "scope": 731, + "src": "10468:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26288,10 +25529,10 @@ "typeString": "uint256" }, "typeName": { - "id": 725, + "id": 701, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10693:7:0", + "src": "10468:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26301,13 +25542,13 @@ }, { "constant": false, - "id": 728, + "id": 704, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10714:7:0", + "scope": 731, + "src": "10489:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26315,10 +25556,10 @@ "typeString": "uint256" }, "typeName": { - "id": 727, + "id": 703, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10714:7:0", + "src": "10489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26328,13 +25569,13 @@ }, { "constant": false, - "id": 730, + "id": 706, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 755, - "src": "10735:7:0", + "scope": 731, + "src": "10510:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26342,10 +25583,10 @@ "typeString": "uint256" }, "typeName": { - "id": 729, + "id": 705, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10735:7:0", + "src": "10510:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26354,43 +25595,43 @@ "visibility": "internal" } ], - "src": "10637:115:0" + "src": "10412:115:0" }, - "scope": 1176, - "src": "10551:497:0", + "scope": 1096, + "src": "10326:497:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 771, + "id": 747, "nodeType": "Block", - "src": "11466:53:0", + "src": "11241:53:0", "statements": [ { "expression": { "baseExpression": { "baseExpression": { - "id": 765, + "id": 741, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "11483:11:0", + "referencedDeclaration": 106, + "src": "11258:11:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 767, + "id": 743, "indexExpression": { - "id": 766, + "id": 742, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 758, - "src": "11495:6:0", + "referencedDeclaration": 734, + "src": "11270:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26401,20 +25642,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11483:19:0", + "src": "11258:19:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 769, + "id": 745, "indexExpression": { - "id": 768, + "id": 744, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 760, - "src": "11503:8:0", + "referencedDeclaration": 736, + "src": "11278:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26425,46 +25666,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11483:29:0", + "src": "11258:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 764, - "id": 770, + "functionReturnParameters": 740, + "id": 746, "nodeType": "Return", - "src": "11476:36:0" + "src": "11251:36:0" } ] }, "documentation": { - "id": 756, + "id": 732, "nodeType": "StructuredDocumentation", - "src": "11069:265:0", + "src": "10844:265:0", "text": " @dev Returns the amount that an address is alowed to spend of behalf of another\n @param _owner The address which owns the tokens\n @param _spender The address that will use the tokens\n @return uint256 The amount of allowed tokens" }, "functionSelector": "dd62ed3e", - "id": 772, + "id": 748, "implemented": true, "kind": "function", "modifiers": [], "name": "allowance", - "nameLocation": "11348:9:0", + "nameLocation": "11123:9:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 761, + "id": 737, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 758, + "id": 734, "mutability": "mutable", "name": "_owner", - "nameLocation": "11366:6:0", + "nameLocation": "11141:6:0", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "11358:14:0", + "scope": 748, + "src": "11133:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26472,10 +25713,10 @@ "typeString": "address" }, "typeName": { - "id": 757, + "id": 733, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11358:7:0", + "src": "11133:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -26486,153 +25727,13 @@ }, { "constant": false, - "id": 760, + "id": 736, "mutability": "mutable", "name": "_spender", - "nameLocation": "11382:8:0", - "nodeType": "VariableDeclaration", - "scope": 772, - "src": "11374:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 759, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11374:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "11357:34:0" - }, - "returnParameters": { - "id": 764, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 763, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 772, - "src": "11453:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 762, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11453:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "11452:9:0" - }, - "scope": 1176, - "src": "11339:180:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 784, - "nodeType": "Block", - "src": "11737:43:0", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 780, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "11754:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 782, - "indexExpression": { - "id": 781, - "name": "_account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "11764:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11754:19:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 779, - "id": 783, - "nodeType": "Return", - "src": "11747:26:0" - } - ] - }, - "documentation": { - "id": 773, - "nodeType": "StructuredDocumentation", - "src": "11525:140:0", - "text": " @dev Returns the balance of a given user.\n @param _account user address\n @return uint256 user's token balance" - }, - "functionSelector": "70a08231", - "id": 785, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "11679:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 776, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 775, - "mutability": "mutable", - "name": "_account", - "nameLocation": "11697:8:0", + "nameLocation": "11157:8:0", "nodeType": "VariableDeclaration", - "scope": 785, - "src": "11689:16:0", + "scope": 748, + "src": "11149:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26640,10 +25741,10 @@ "typeString": "address" }, "typeName": { - "id": 774, + "id": 735, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11689:7:0", + "src": "11149:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -26653,21 +25754,21 @@ "visibility": "internal" } ], - "src": "11688:18:0" + "src": "11132:34:0" }, "returnParameters": { - "id": 779, + "id": 740, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 778, + "id": 739, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 785, - "src": "11728:7:0", + "scope": 748, + "src": "11228:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26675,791 +25776,139 @@ "typeString": "uint256" }, "typeName": { - "id": 777, + "id": 738, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11728:7:0", + "src": "11228:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } - }, - "visibility": "internal" - } - ], - "src": "11727:9:0" - }, - "scope": 1176, - "src": "11670:110:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 793, - "nodeType": "Block", - "src": "12006:33:0", - "statements": [ - { - "expression": { - "id": 791, - "name": "_decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "12023:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "functionReturnParameters": 790, - "id": 792, - "nodeType": "Return", - "src": "12016:16:0" - } - ] - }, - "documentation": { - "id": 786, - "nodeType": "StructuredDocumentation", - "src": "11786:167:0", - "text": " @dev Returns the number of decimals used to get its user representation.\n @return uint8 the number of decimals; used only for display purposes" - }, - "functionSelector": "313ce567", - "id": 794, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decimals", - "nameLocation": "11967:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 787, - "nodeType": "ParameterList", - "parameters": [], - "src": "11975:2:0" - }, - "returnParameters": { - "id": 790, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 789, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 794, - "src": "11999:5:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 788, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "11999:5:0", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "11998:7:0" - }, - "scope": 1176, - "src": "11958:81:0", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 849, - "nodeType": "Block", - "src": "12454:377:0", - "statements": [ - { - "assignments": [ - 805 - ], - "declarations": [ - { - "constant": false, - "id": 805, - "mutability": "mutable", - "name": "_timeDiff", - "nameLocation": "12472:9:0", - "nodeType": "VariableDeclaration", - "scope": 849, - "src": "12464:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 804, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12464:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 810, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 806, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "12484:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "12484:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 808, - "name": "timeOfLastNewValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "12502:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12484:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12464:56:0" - }, - { - "assignments": [ - 812 - ], - "declarations": [ - { - "constant": false, - "id": 812, - "mutability": "mutable", - "name": "_reward", - "nameLocation": "12538:7:0", - "nodeType": "VariableDeclaration", - "scope": 849, - "src": "12530:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 811, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12530:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 819, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 818, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 815, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 813, - "name": "_timeDiff", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 805, - "src": "12549:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 814, - "name": "timeBasedReward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 115, - "src": "12561:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12549:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 816, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12548:29:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "333030", - "id": 817, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12580:3:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "src": "12548:35:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12530:53:0" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 823, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "12672:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", - "typeString": "contract TellorPlayground" - } - ], - "id": 822, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12664:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 821, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12664:7:0", - "typeDescriptions": {} - } - }, - "id": 824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12664:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 820, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12654:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view returns (uint256)" - } - }, - "id": 825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12654:24:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 828, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 826, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "12681:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 827, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "12691:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12681:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12654:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 842, - "nodeType": "IfStatement", - "src": "12650:133:0", - "trueBody": { - "id": 841, - "nodeType": "Block", - "src": "12707:76:0", - "statements": [ - { - "expression": { - "id": 839, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 830, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "12721:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 834, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "12749:4:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", - "typeString": "contract TellorPlayground" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", - "typeString": "contract TellorPlayground" - } - ], - "id": 833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12741:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 832, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12741:7:0", - "typeDescriptions": {} - } - }, - "id": 835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12741:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 831, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12731:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view returns (uint256)" - } - }, - "id": 836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12731:24:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 837, - "name": "tipsInContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "12758:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12731:41:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12721:51:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 840, - "nodeType": "ExpressionStatement", - "src": "12721:51:0" - } - ] - } - }, + }, + "visibility": "internal" + } + ], + "src": "11227:9:0" + }, + "scope": 1096, + "src": "11114:180:0", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 760, + "nodeType": "Block", + "src": "11512:43:0", + "statements": [ { "expression": { - "components": [ - { - "baseExpression": { - "id": 843, - "name": "tips", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 91, - "src": "12800:4:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 845, - "indexExpression": { - "id": 844, - "name": "_queryId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 797, - "src": "12805:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12800:14:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 846, - "name": "_reward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "12816:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "baseExpression": { + "id": 756, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 110, + "src": "11529:9:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" } - ], - "id": 847, + }, + "id": 758, + "indexExpression": { + "id": 757, + "name": "_account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 751, + "src": "11539:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, "isConstant": false, - "isInlineArray": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12799:25:0", + "nodeType": "IndexAccess", + "src": "11529:19:0", "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "functionReturnParameters": 803, - "id": 848, + "functionReturnParameters": 755, + "id": 759, "nodeType": "Return", - "src": "12792:32:0" + "src": "11522:26:0" } ] }, "documentation": { - "id": 795, + "id": 749, "nodeType": "StructuredDocumentation", - "src": "12045:250:0", - "text": " @dev Calculates the current reward for a reporter given tips and time based reward\n @param _queryId is ID of the specific data feed\n @return uint256 tip amount for given query ID\n @return uint256 time based reward" + "src": "11300:140:0", + "text": " @dev Returns the balance of a given user.\n @param _account user address\n @return uint256 user's token balance" }, - "functionSelector": "a1e588a5", - "id": 850, + "functionSelector": "70a08231", + "id": 761, "implemented": true, "kind": "function", "modifiers": [], - "name": "getCurrentReward", - "nameLocation": "12352:16:0", + "name": "balanceOf", + "nameLocation": "11454:9:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 798, + "id": 752, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 797, + "id": 751, "mutability": "mutable", - "name": "_queryId", - "nameLocation": "12377:8:0", + "name": "_account", + "nameLocation": "11472:8:0", "nodeType": "VariableDeclaration", - "scope": 850, - "src": "12369:16:0", + "scope": 761, + "src": "11464:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_address", + "typeString": "address" }, "typeName": { - "id": 796, - "name": "bytes32", + "id": 750, + "name": "address", "nodeType": "ElementaryTypeName", - "src": "12369:7:0", + "src": "11464:7:0", + "stateMutability": "nonpayable", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_address", + "typeString": "address" } }, "visibility": "internal" } ], - "src": "12368:18:0" + "src": "11463:18:0" }, "returnParameters": { - "id": 803, + "id": 755, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 800, + "id": 754, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 850, - "src": "12432:7:0", + "scope": 761, + "src": "11503:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27467,82 +25916,141 @@ "typeString": "uint256" }, "typeName": { - "id": 799, + "id": 753, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12432:7:0", + "src": "11503:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" - }, + } + ], + "src": "11502:9:0" + }, + "scope": 1096, + "src": "11445:110:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 769, + "nodeType": "Block", + "src": "11781:33:0", + "statements": [ + { + "expression": { + "id": 767, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 125, + "src": "11798:9:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "functionReturnParameters": 766, + "id": 768, + "nodeType": "Return", + "src": "11791:16:0" + } + ] + }, + "documentation": { + "id": 762, + "nodeType": "StructuredDocumentation", + "src": "11561:167:0", + "text": " @dev Returns the number of decimals used to get its user representation.\n @return uint8 the number of decimals; used only for display purposes" + }, + "functionSelector": "313ce567", + "id": 770, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "11742:8:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 763, + "nodeType": "ParameterList", + "parameters": [], + "src": "11750:2:0" + }, + "returnParameters": { + "id": 766, + "nodeType": "ParameterList", + "parameters": [ { "constant": false, - "id": 802, + "id": 765, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 850, - "src": "12441:7:0", + "scope": 770, + "src": "11774:5:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, "typeName": { - "id": 801, - "name": "uint256", + "id": 764, + "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "12441:7:0", + "src": "11774:5:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, "visibility": "internal" } ], - "src": "12431:18:0" + "src": "11773:7:0" }, - "scope": 1176, - "src": "12343:488:0", + "scope": 1096, + "src": "11733:81:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 863, + "id": 783, "nodeType": "Block", - "src": "13163:51:0", + "src": "12146:51:0", "statements": [ { "expression": { "expression": { "baseExpression": { - "id": 858, + "id": 778, "name": "timestamps", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "13180:10:0", + "referencedDeclaration": 85, + "src": "12163:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[] storage ref)" } }, - "id": 860, + "id": 780, "indexExpression": { - "id": 859, + "id": 779, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "13191:8:0", + "referencedDeclaration": 773, + "src": "12174:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27553,59 +26061,59 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13180:20:0", + "src": "12163:20:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "id": 861, + "id": 781, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "13180:27:0", + "src": "12163:27:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 857, - "id": 862, + "functionReturnParameters": 777, + "id": 782, "nodeType": "Return", - "src": "13173:34:0" + "src": "12156:34:0" } ] }, "documentation": { - "id": 851, + "id": 771, "nodeType": "StructuredDocumentation", - "src": "12837:210:0", + "src": "11820:210:0", "text": " @dev Counts the number of values that have been submitted for a given ID\n @param _queryId the ID to look up\n @return uint256 count of the number of values received for the queryId" }, "functionSelector": "77b03e0d", - "id": 864, + "id": 784, "implemented": true, "kind": "function", "modifiers": [], "name": "getNewValueCountbyQueryId", - "nameLocation": "13061:25:0", + "nameLocation": "12044:25:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 854, + "id": 774, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 853, + "id": 773, "mutability": "mutable", "name": "_queryId", - "nameLocation": "13095:8:0", + "nameLocation": "12078:8:0", "nodeType": "VariableDeclaration", - "scope": 864, - "src": "13087:16:0", + "scope": 784, + "src": "12070:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27613,10 +26121,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 852, + "id": 772, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13087:7:0", + "src": "12070:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27625,21 +26133,21 @@ "visibility": "internal" } ], - "src": "13086:18:0" + "src": "12069:18:0" }, "returnParameters": { - "id": 857, + "id": 777, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 856, + "id": 776, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 864, - "src": "13150:7:0", + "scope": 784, + "src": "12133:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27647,10 +26155,10 @@ "typeString": "uint256" }, "typeName": { - "id": 855, + "id": 775, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13150:7:0", + "src": "12133:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27659,34 +26167,34 @@ "visibility": "internal" } ], - "src": "13149:9:0" + "src": "12132:9:0" }, - "scope": 1176, - "src": "13052:162:0", + "scope": 1096, + "src": "12035:162:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 897, + "id": 817, "nodeType": "Block", - "src": "13566:152:0", + "src": "12549:152:0", "statements": [ { "assignments": [ - 875 + 795 ], "declarations": [ { "constant": false, - "id": 875, + "id": 795, "mutability": "mutable", "name": "len", - "nameLocation": "13584:3:0", + "nameLocation": "12567:3:0", "nodeType": "VariableDeclaration", - "scope": 897, - "src": "13576:11:0", + "scope": 817, + "src": "12559:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27694,10 +26202,10 @@ "typeString": "uint256" }, "typeName": { - "id": 874, + "id": 794, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13576:7:0", + "src": "12559:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27706,29 +26214,29 @@ "visibility": "internal" } ], - "id": 880, + "id": 800, "initialValue": { "expression": { "baseExpression": { - "id": 876, + "id": 796, "name": "timestamps", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "13590:10:0", + "referencedDeclaration": 85, + "src": "12573:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[] storage ref)" } }, - "id": 878, + "id": 798, "indexExpression": { - "id": 877, + "id": 797, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "13601:8:0", + "referencedDeclaration": 787, + "src": "12584:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27739,27 +26247,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13590:20:0", + "src": "12573:20:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "id": 879, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "13590:27:0", + "src": "12573:27:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13576:41:0" + "src": "12559:41:0" }, { "condition": { @@ -27767,7 +26275,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 887, + "id": 807, "isConstant": false, "isLValue": false, "isPure": false, @@ -27777,18 +26285,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 883, + "id": 803, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 881, + "id": 801, "name": "len", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 875, - "src": "13631:3:0", + "referencedDeclaration": 795, + "src": "12614:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27798,21 +26306,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 882, + "id": 802, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13638:1:0", + "src": "12621:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "13631:8:0", + "src": "12614:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27825,18 +26333,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 886, + "id": 806, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 884, + "id": 804, "name": "len", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 875, - "src": "13643:3:0", + "referencedDeclaration": 795, + "src": "12626:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27845,78 +26353,78 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 885, + "id": 805, "name": "_index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "13650:6:0", + "referencedDeclaration": 789, + "src": "12633:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13643:13:0", + "src": "12626:13:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13631:25:0", + "src": "12614:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 890, + "id": 810, "nodeType": "IfStatement", - "src": "13627:39:0", + "src": "12610:39:0", "trueBody": { "expression": { "hexValue": "30", - "id": 888, + "id": 808, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13665:1:0", + "src": "12648:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 873, - "id": 889, + "functionReturnParameters": 793, + "id": 809, "nodeType": "Return", - "src": "13658:8:0" + "src": "12641:8:0" } }, { "expression": { "baseExpression": { "baseExpression": { - "id": 891, + "id": 811, "name": "timestamps", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 87, - "src": "13683:10:0", + "referencedDeclaration": 85, + "src": "12666:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[] storage ref)" } }, - "id": 893, + "id": 813, "indexExpression": { - "id": 892, + "id": 812, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "13694:8:0", + "referencedDeclaration": 787, + "src": "12677:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27927,20 +26435,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13683:20:0", + "src": "12666:20:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "id": 895, + "id": 815, "indexExpression": { - "id": 894, + "id": 814, "name": "_index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "13704:6:0", + "referencedDeclaration": 789, + "src": "12687:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27951,46 +26459,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13683:28:0", + "src": "12666:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 873, - "id": 896, + "functionReturnParameters": 793, + "id": 816, "nodeType": "Return", - "src": "13676:35:0" + "src": "12659:35:0" } ] }, "documentation": { - "id": 865, + "id": 785, "nodeType": "StructuredDocumentation", - "src": "13220:210:0", + "src": "12203:210:0", "text": " @dev Gets the timestamp for the value based on their index\n @param _queryId is the queryId to look up\n @param _index is the value index to look up\n @return uint256 timestamp" }, "functionSelector": "ce5e11bf", - "id": 898, + "id": 818, "implemented": true, "kind": "function", "modifiers": [], "name": "getTimestampbyQueryIdandIndex", - "nameLocation": "13444:29:0", + "nameLocation": "12427:29:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 870, + "id": 790, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 867, + "id": 787, "mutability": "mutable", "name": "_queryId", - "nameLocation": "13482:8:0", + "nameLocation": "12465:8:0", "nodeType": "VariableDeclaration", - "scope": 898, - "src": "13474:16:0", + "scope": 818, + "src": "12457:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27998,10 +26506,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 866, + "id": 786, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13474:7:0", + "src": "12457:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28011,13 +26519,13 @@ }, { "constant": false, - "id": 869, + "id": 789, "mutability": "mutable", "name": "_index", - "nameLocation": "13500:6:0", + "nameLocation": "12483:6:0", "nodeType": "VariableDeclaration", - "scope": 898, - "src": "13492:14:0", + "scope": 818, + "src": "12475:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28025,10 +26533,10 @@ "typeString": "uint256" }, "typeName": { - "id": 868, + "id": 788, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13492:7:0", + "src": "12475:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28037,21 +26545,21 @@ "visibility": "internal" } ], - "src": "13473:34:0" + "src": "12456:34:0" }, "returnParameters": { - "id": 873, + "id": 793, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 872, + "id": 792, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 898, - "src": "13553:7:0", + "scope": 818, + "src": "12536:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28059,10 +26567,10 @@ "typeString": "uint256" }, "typeName": { - "id": 871, + "id": 791, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13553:7:0", + "src": "12536:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28071,42 +26579,42 @@ "visibility": "internal" } ], - "src": "13552:9:0" + "src": "12535:9:0" }, - "scope": 1176, - "src": "13435:283:0", + "scope": 1096, + "src": "12418:283:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 911, + "id": 831, "nodeType": "Block", - "src": "14025:41:0", + "src": "13008:41:0", "statements": [ { "expression": { "baseExpression": { - "id": 907, + "id": 827, "name": "voteRounds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 102, - "src": "14042:10:0", + "referencedDeclaration": 100, + "src": "13025:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(bytes32 => uint256[] storage ref)" } }, - "id": 909, + "id": 829, "indexExpression": { - "id": 908, + "id": 828, "name": "_hash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 901, - "src": "14053:5:0", + "referencedDeclaration": 821, + "src": "13036:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28117,46 +26625,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14042:17:0", + "src": "13025:17:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "functionReturnParameters": 906, - "id": 910, + "functionReturnParameters": 826, + "id": 830, "nodeType": "Return", - "src": "14035:24:0" + "src": "13018:24:0" } ] }, "documentation": { - "id": 899, + "id": 819, "nodeType": "StructuredDocumentation", - "src": "13724:191:0", + "src": "12707:191:0", "text": " @dev Returns an array of voting rounds for a given vote\n @param _hash is the identifier hash for a vote\n @return uint256[] memory dispute IDs of the vote rounds" }, "functionSelector": "248638e5", - "id": 912, + "id": 832, "implemented": true, "kind": "function", "modifiers": [], "name": "getVoteRounds", - "nameLocation": "13929:13:0", + "nameLocation": "12912:13:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 902, + "id": 822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 901, + "id": 821, "mutability": "mutable", "name": "_hash", - "nameLocation": "13951:5:0", + "nameLocation": "12934:5:0", "nodeType": "VariableDeclaration", - "scope": 912, - "src": "13943:13:0", + "scope": 832, + "src": "12926:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28164,10 +26672,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 900, + "id": 820, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13943:7:0", + "src": "12926:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28176,21 +26684,21 @@ "visibility": "internal" } ], - "src": "13942:15:0" + "src": "12925:15:0" }, "returnParameters": { - "id": 906, + "id": 826, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 905, + "id": 825, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 912, - "src": "14003:16:0", + "scope": 832, + "src": "12986:16:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -28199,18 +26707,18 @@ }, "typeName": { "baseType": { - "id": 903, + "id": 823, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14003:7:0", + "src": "12986:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 904, + "id": 824, "nodeType": "ArrayTypeName", - "src": "14003:9:0", + "src": "12986:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -28219,32 +26727,32 @@ "visibility": "internal" } ], - "src": "14002:18:0" + "src": "12985:18:0" }, - "scope": 1176, - "src": "13920:146:0", + "scope": 1096, + "src": "12903:146:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 923, + "id": 843, "nodeType": "Block", - "src": "14237:37:0", + "src": "13220:37:0", "statements": [ { "expression": { "arguments": [ { - "id": 920, + "id": 840, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "14262:4:0", + "src": "13245:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -28252,30 +26760,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 919, + "id": 839, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14254:7:0", + "src": "13237:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 918, + "id": 838, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14254:7:0", + "src": "13237:7:0", "typeDescriptions": {} } }, - "id": 921, + "id": 841, "isConstant": false, "isLValue": false, "isPure": false, @@ -28283,53 +26791,53 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14254:13:0", + "src": "13237:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 917, - "id": 922, + "functionReturnParameters": 837, + "id": 842, "nodeType": "Return", - "src": "14247:20:0" + "src": "13230:20:0" } ] }, "documentation": { - "id": 913, + "id": 833, "nodeType": "StructuredDocumentation", - "src": "14072:108:0", + "src": "13055:108:0", "text": " @dev Returns the governance address of the contract\n @return address (this address)" }, "functionSelector": "5aa6e675", - "id": 924, + "id": 844, "implemented": true, "kind": "function", "modifiers": [], "name": "governance", - "nameLocation": "14194:10:0", + "nameLocation": "13177:10:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 914, + "id": 834, "nodeType": "ParameterList", "parameters": [], - "src": "14204:2:0" + "src": "13187:2:0" }, "returnParameters": { - "id": 917, + "id": 837, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 916, + "id": 836, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "14229:7:0", + "scope": 844, + "src": "13212:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28337,10 +26845,10 @@ "typeString": "address" }, "typeName": { - "id": 915, + "id": 835, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14229:7:0", + "src": "13212:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -28350,73 +26858,73 @@ "visibility": "internal" } ], - "src": "14228:9:0" + "src": "13211:9:0" }, - "scope": 1176, - "src": "14185:89:0", + "scope": 1096, + "src": "13168:89:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 932, + "id": 852, "nodeType": "Block", - "src": "14435:29:0", + "src": "13418:29:0", "statements": [ { "expression": { - "id": 930, + "id": 850, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "14452:5:0", + "referencedDeclaration": 121, + "src": "13435:5:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 929, - "id": 931, + "functionReturnParameters": 849, + "id": 851, "nodeType": "Return", - "src": "14445:12:0" + "src": "13428:12:0" } ] }, "documentation": { - "id": 925, + "id": 845, "nodeType": "StructuredDocumentation", - "src": "14284:94:0", + "src": "13267:94:0", "text": " @dev Returns the name of the token.\n @return string name of the token" }, "functionSelector": "06fdde03", - "id": 933, + "id": 853, "implemented": true, "kind": "function", "modifiers": [], "name": "name", - "nameLocation": "14392:4:0", + "nameLocation": "13375:4:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 926, + "id": 846, "nodeType": "ParameterList", "parameters": [], - "src": "14396:2:0" + "src": "13379:2:0" }, "returnParameters": { - "id": 929, + "id": 849, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 928, + "id": 848, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 933, - "src": "14420:13:0", + "scope": 853, + "src": "13403:13:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -28424,10 +26932,10 @@ "typeString": "string" }, "typeName": { - "id": 927, + "id": 847, "name": "string", "nodeType": "ElementaryTypeName", - "src": "14420:6:0", + "src": "13403:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -28436,43 +26944,43 @@ "visibility": "internal" } ], - "src": "14419:15:0" + "src": "13402:15:0" }, - "scope": 1176, - "src": "14383:81:0", + "scope": 1096, + "src": "13366:81:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 949, + "id": 869, "nodeType": "Block", - "src": "14827:52:0", + "src": "13810:52:0", "statements": [ { "expression": { "baseExpression": { "baseExpression": { - "id": 943, + "id": 863, "name": "values", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "14844:6:0", + "referencedDeclaration": 95, + "src": "13827:6:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_mapping$_t_uint256_$_t_bytes_storage_$_$", "typeString": "mapping(bytes32 => mapping(uint256 => bytes storage ref))" } }, - "id": 945, + "id": 865, "indexExpression": { - "id": 944, + "id": 864, "name": "_queryId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "14851:8:0", + "referencedDeclaration": 856, + "src": "13834:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28483,20 +26991,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14844:16:0", + "src": "13827:16:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", "typeString": "mapping(uint256 => bytes storage ref)" } }, - "id": 947, + "id": 867, "indexExpression": { - "id": 946, + "id": 866, "name": "_timestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 938, - "src": "14861:10:0", + "referencedDeclaration": 858, + "src": "13844:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28507,46 +27015,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14844:28:0", + "src": "13827:28:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" } }, - "functionReturnParameters": 942, - "id": 948, + "functionReturnParameters": 862, + "id": 868, "nodeType": "Return", - "src": "14837:35:0" + "src": "13820:35:0" } ] }, "documentation": { - "id": 934, + "id": 854, "nodeType": "StructuredDocumentation", - "src": "14470:229:0", + "src": "13453:229:0", "text": " @dev Retrieves value from oracle based on queryId/timestamp\n @param _queryId being requested\n @param _timestamp to retrieve data/value from\n @return bytes value for queryId/timestamp submitted" }, "functionSelector": "c5958af9", - "id": 950, + "id": 870, "implemented": true, "kind": "function", "modifiers": [], "name": "retrieveData", - "nameLocation": "14713:12:0", + "nameLocation": "13696:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 939, + "id": 859, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 936, + "id": 856, "mutability": "mutable", "name": "_queryId", - "nameLocation": "14734:8:0", + "nameLocation": "13717:8:0", "nodeType": "VariableDeclaration", - "scope": 950, - "src": "14726:16:0", + "scope": 870, + "src": "13709:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28554,10 +27062,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 935, + "id": 855, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "14726:7:0", + "src": "13709:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28567,13 +27075,13 @@ }, { "constant": false, - "id": 938, + "id": 858, "mutability": "mutable", "name": "_timestamp", - "nameLocation": "14752:10:0", + "nameLocation": "13735:10:0", "nodeType": "VariableDeclaration", - "scope": 950, - "src": "14744:18:0", + "scope": 870, + "src": "13727:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28581,10 +27089,10 @@ "typeString": "uint256" }, "typeName": { - "id": 937, + "id": 857, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14744:7:0", + "src": "13727:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28593,21 +27101,21 @@ "visibility": "internal" } ], - "src": "14725:38:0" + "src": "13708:38:0" }, "returnParameters": { - "id": 942, + "id": 862, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 941, + "id": 861, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 950, - "src": "14809:12:0", + "scope": 870, + "src": "13792:12:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -28615,10 +27123,10 @@ "typeString": "bytes" }, "typeName": { - "id": 940, + "id": 860, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "14809:5:0", + "src": "13792:5:0", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -28627,73 +27135,73 @@ "visibility": "internal" } ], - "src": "14808:14:0" + "src": "13791:14:0" }, - "scope": 1176, - "src": "14704:175:0", + "scope": 1096, + "src": "13687:175:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 958, + "id": 878, "nodeType": "Block", - "src": "15042:31:0", + "src": "14025:31:0", "statements": [ { "expression": { - "id": 956, + "id": 876, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 129, - "src": "15059:7:0", + "referencedDeclaration": 123, + "src": "14042:7:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 955, - "id": 957, + "functionReturnParameters": 875, + "id": 877, "nodeType": "Return", - "src": "15052:14:0" + "src": "14035:14:0" } ] }, "documentation": { - "id": 951, + "id": 871, "nodeType": "StructuredDocumentation", - "src": "14885:98:0", + "src": "13868:98:0", "text": " @dev Returns the symbol of the token.\n @return string symbol of the token" }, "functionSelector": "95d89b41", - "id": 959, + "id": 879, "implemented": true, "kind": "function", "modifiers": [], "name": "symbol", - "nameLocation": "14997:6:0", + "nameLocation": "13980:6:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 952, + "id": 872, "nodeType": "ParameterList", "parameters": [], - "src": "15003:2:0" + "src": "13986:2:0" }, "returnParameters": { - "id": 955, + "id": 875, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 954, + "id": 874, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 959, - "src": "15027:13:0", + "scope": 879, + "src": "14010:13:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -28701,10 +27209,10 @@ "typeString": "string" }, "typeName": { - "id": 953, + "id": 873, "name": "string", "nodeType": "ElementaryTypeName", - "src": "15027:6:0", + "src": "14010:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -28713,73 +27221,73 @@ "visibility": "internal" } ], - "src": "15026:15:0" + "src": "14009:15:0" }, - "scope": 1176, - "src": "14988:85:0", + "scope": 1096, + "src": "13971:85:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 967, + "id": 887, "nodeType": "Block", - "src": "15244:36:0", + "src": "14227:36:0", "statements": [ { "expression": { - "id": 965, + "id": 885, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "15261:12:0", + "referencedDeclaration": 119, + "src": "14244:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 964, - "id": 966, + "functionReturnParameters": 884, + "id": 886, "nodeType": "Return", - "src": "15254:19:0" + "src": "14237:19:0" } ] }, "documentation": { - "id": 960, + "id": 880, "nodeType": "StructuredDocumentation", - "src": "15079:107:0", + "src": "14062:107:0", "text": " @dev Returns the total supply of the token.\n @return uint256 total supply of token" }, "functionSelector": "18160ddd", - "id": 968, + "id": 888, "implemented": true, "kind": "function", "modifiers": [], "name": "totalSupply", - "nameLocation": "15200:11:0", + "nameLocation": "14183:11:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 961, + "id": 881, "nodeType": "ParameterList", "parameters": [], - "src": "15211:2:0" + "src": "14194:2:0" }, "returnParameters": { - "id": 964, + "id": 884, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 963, + "id": 883, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 968, - "src": "15235:7:0", + "scope": 888, + "src": "14218:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28787,10 +27295,10 @@ "typeString": "uint256" }, "typeName": { - "id": 962, + "id": 882, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "15235:7:0", + "src": "14218:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28799,19 +27307,19 @@ "visibility": "internal" } ], - "src": "15234:9:0" + "src": "14217:9:0" }, - "scope": 1176, - "src": "15191:89:0", + "scope": 1096, + "src": "14174:89:0", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 1012, + "id": 932, "nodeType": "Block", - "src": "15698:264:0", + "src": "14681:264:0", "statements": [ { "expression": { @@ -28821,18 +27329,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 984, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 979, + "id": 899, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 971, - "src": "15716:6:0", + "referencedDeclaration": 891, + "src": "14699:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28844,14 +27352,14 @@ "arguments": [ { "hexValue": "30", - "id": 982, + "id": 902, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15734:1:0", + "src": "14717:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -28866,26 +27374,26 @@ "typeString": "int_const 0" } ], - "id": 981, + "id": 901, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15726:7:0", + "src": "14709:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 980, + "id": 900, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15726:7:0", + "src": "14709:7:0", "typeDescriptions": {} } }, - "id": 983, + "id": 903, "isConstant": false, "isLValue": false, "isPure": true, @@ -28893,14 +27401,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15726:10:0", + "src": "14709:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "15716:20:0", + "src": "14699:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -28908,14 +27416,14 @@ }, { "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", - "id": 985, + "id": 905, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15738:38:0", + "src": "14721:38:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", "typeString": "literal_string \"ERC20: approve from the zero address\"" @@ -28934,7 +27442,7 @@ "typeString": "literal_string \"ERC20: approve from the zero address\"" } ], - "id": 978, + "id": 898, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -28942,13 +27450,13 @@ -18 ], "referencedDeclaration": -18, - "src": "15708:7:0", + "src": "14691:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 986, + "id": 906, "isConstant": false, "isLValue": false, "isPure": false, @@ -28956,16 +27464,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15708:69:0", + "src": "14691:69:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 987, + "id": 907, "nodeType": "ExpressionStatement", - "src": "15708:69:0" + "src": "14691:69:0" }, { "expression": { @@ -28975,18 +27483,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 994, + "id": 914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 989, + "id": 909, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 973, - "src": "15795:8:0", + "referencedDeclaration": 893, + "src": "14778:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28998,14 +27506,14 @@ "arguments": [ { "hexValue": "30", - "id": 992, + "id": 912, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15815:1:0", + "src": "14798:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -29020,26 +27528,26 @@ "typeString": "int_const 0" } ], - "id": 991, + "id": 911, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15807:7:0", + "src": "14790:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 990, + "id": 910, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15807:7:0", + "src": "14790:7:0", "typeDescriptions": {} } }, - "id": 993, + "id": 913, "isConstant": false, "isLValue": false, "isPure": true, @@ -29047,14 +27555,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15807:10:0", + "src": "14790:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "15795:22:0", + "src": "14778:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -29062,14 +27570,14 @@ }, { "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", - "id": 995, + "id": 915, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15819:36:0", + "src": "14802:36:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", "typeString": "literal_string \"ERC20: approve to the zero address\"" @@ -29088,7 +27596,7 @@ "typeString": "literal_string \"ERC20: approve to the zero address\"" } ], - "id": 988, + "id": 908, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29096,13 +27604,13 @@ -18 ], "referencedDeclaration": -18, - "src": "15787:7:0", + "src": "14770:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 996, + "id": 916, "isConstant": false, "isLValue": false, "isPure": false, @@ -29110,20 +27618,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15787:69:0", + "src": "14770:69:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 997, + "id": 917, "nodeType": "ExpressionStatement", - "src": "15787:69:0" + "src": "14770:69:0" }, { "expression": { - "id": 1004, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -29131,25 +27639,25 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 998, + "id": 918, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "15866:11:0", + "referencedDeclaration": 106, + "src": "14849:11:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 1001, + "id": 921, "indexExpression": { - "id": 999, + "id": 919, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 971, - "src": "15878:6:0", + "referencedDeclaration": 891, + "src": "14861:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29160,20 +27668,20 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15866:19:0", + "src": "14849:19:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1002, + "id": 922, "indexExpression": { - "id": 1000, + "id": 920, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 973, - "src": "15886:8:0", + "referencedDeclaration": 893, + "src": "14869:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29184,7 +27692,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "15866:29:0", + "src": "14849:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29193,61 +27701,61 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1003, + "id": 923, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 975, - "src": "15898:7:0", + "referencedDeclaration": 895, + "src": "14881:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "15866:39:0", + "src": "14849:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1005, + "id": 925, "nodeType": "ExpressionStatement", - "src": "15866:39:0" + "src": "14849:39:0" }, { "eventCall": { "arguments": [ { - "id": 1007, + "id": 927, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 971, - "src": "15929:6:0", + "referencedDeclaration": 891, + "src": "14912:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1008, + "id": 928, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 973, - "src": "15937:8:0", + "referencedDeclaration": 893, + "src": "14920:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1009, + "id": 929, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 975, - "src": "15947:7:0", + "referencedDeclaration": 895, + "src": "14930:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29269,18 +27777,18 @@ "typeString": "uint256" } ], - "id": 1006, + "id": 926, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 9, - "src": "15920:8:0", + "src": "14903:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1010, + "id": 930, "isConstant": false, "isLValue": false, "isPure": false, @@ -29288,45 +27796,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15920:35:0", + "src": "14903:35:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1011, + "id": 931, "nodeType": "EmitStatement", - "src": "15915:40:0" + "src": "14898:40:0" } ] }, "documentation": { - "id": 969, + "id": 889, "nodeType": "StructuredDocumentation", - "src": "15312:265:0", + "src": "14295:265:0", "text": " @dev Internal function to approve tokens for the user\n @param _owner The owner of the tokens\n @param _spender The address which is allowed to spend the tokens\n @param _amount The amount that msg.sender is allowing spender to use" }, - "id": 1013, + "id": 933, "implemented": true, "kind": "function", "modifiers": [], "name": "_approve", - "nameLocation": "15591:8:0", + "nameLocation": "14574:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 976, + "id": 896, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 971, + "id": 891, "mutability": "mutable", "name": "_owner", - "nameLocation": "15617:6:0", + "nameLocation": "14600:6:0", "nodeType": "VariableDeclaration", - "scope": 1013, - "src": "15609:14:0", + "scope": 933, + "src": "14592:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29334,10 +27842,10 @@ "typeString": "address" }, "typeName": { - "id": 970, + "id": 890, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15609:7:0", + "src": "14592:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -29348,13 +27856,13 @@ }, { "constant": false, - "id": 973, + "id": 893, "mutability": "mutable", "name": "_spender", - "nameLocation": "15641:8:0", + "nameLocation": "14624:8:0", "nodeType": "VariableDeclaration", - "scope": 1013, - "src": "15633:16:0", + "scope": 933, + "src": "14616:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29362,10 +27870,10 @@ "typeString": "address" }, "typeName": { - "id": 972, + "id": 892, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15633:7:0", + "src": "14616:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -29376,13 +27884,13 @@ }, { "constant": false, - "id": 975, + "id": 895, "mutability": "mutable", "name": "_amount", - "nameLocation": "15667:7:0", + "nameLocation": "14650:7:0", "nodeType": "VariableDeclaration", - "scope": 1013, - "src": "15659:15:0", + "scope": 933, + "src": "14642:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29390,10 +27898,10 @@ "typeString": "uint256" }, "typeName": { - "id": 974, + "id": 894, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "15659:7:0", + "src": "14642:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29402,25 +27910,25 @@ "visibility": "internal" } ], - "src": "15599:81:0" + "src": "14582:81:0" }, "returnParameters": { - "id": 977, + "id": 897, "nodeType": "ParameterList", "parameters": [], - "src": "15698:0:0" + "src": "14681:0:0" }, - "scope": 1176, - "src": "15582:380:0", + "scope": 1096, + "src": "14565:380:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "body": { - "id": 1050, + "id": 970, "nodeType": "Block", - "src": "16218:212:0", + "src": "15201:212:0", "statements": [ { "expression": { @@ -29430,18 +27938,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1027, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1022, + "id": 942, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "16236:8:0", + "referencedDeclaration": 936, + "src": "15219:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29453,14 +27961,14 @@ "arguments": [ { "hexValue": "30", - "id": 1025, + "id": 945, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16256:1:0", + "src": "15239:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -29475,26 +27983,26 @@ "typeString": "int_const 0" } ], - "id": 1024, + "id": 944, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16248:7:0", + "src": "15231:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1023, + "id": 943, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16248:7:0", + "src": "15231:7:0", "typeDescriptions": {} } }, - "id": 1026, + "id": 946, "isConstant": false, "isLValue": false, "isPure": true, @@ -29502,14 +28010,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16248:10:0", + "src": "15231:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "16236:22:0", + "src": "15219:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -29517,14 +28025,14 @@ }, { "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", - "id": 1028, + "id": 948, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16260:35:0", + "src": "15243:35:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", "typeString": "literal_string \"ERC20: burn from the zero address\"" @@ -29543,7 +28051,7 @@ "typeString": "literal_string \"ERC20: burn from the zero address\"" } ], - "id": 1021, + "id": 941, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29551,13 +28059,13 @@ -18 ], "referencedDeclaration": -18, - "src": "16228:7:0", + "src": "15211:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1029, + "id": 949, "isConstant": false, "isLValue": false, "isPure": false, @@ -29565,45 +28073,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16228:68:0", + "src": "15211:68:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1030, + "id": 950, "nodeType": "ExpressionStatement", - "src": "16228:68:0" + "src": "15211:68:0" }, { "expression": { - "id": 1035, + "id": 955, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1031, + "id": 951, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "16306:9:0", + "referencedDeclaration": 110, + "src": "15289:9:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1033, + "id": 953, "indexExpression": { - "id": 1032, + "id": 952, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "16316:8:0", + "referencedDeclaration": 936, + "src": "15299:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29614,7 +28122,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "16306:19:0", + "src": "15289:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29623,41 +28131,41 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 1034, + "id": 954, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1018, - "src": "16329:7:0", + "referencedDeclaration": 938, + "src": "15312:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16306:30:0", + "src": "15289:30:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1036, + "id": 956, "nodeType": "ExpressionStatement", - "src": "16306:30:0" + "src": "15289:30:0" }, { "expression": { - "id": 1039, + "id": 959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1037, + "id": 957, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "16346:12:0", + "referencedDeclaration": 119, + "src": "15329:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29666,37 +28174,37 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 1038, + "id": 958, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1018, - "src": "16362:7:0", + "referencedDeclaration": 938, + "src": "15345:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16346:23:0", + "src": "15329:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1040, + "id": 960, "nodeType": "ExpressionStatement", - "src": "16346:23:0" + "src": "15329:23:0" }, { "eventCall": { "arguments": [ { - "id": 1042, + "id": 962, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "16393:8:0", + "referencedDeclaration": 936, + "src": "15376:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29706,14 +28214,14 @@ "arguments": [ { "hexValue": "30", - "id": 1045, + "id": 965, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16411:1:0", + "src": "15394:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -29728,26 +28236,26 @@ "typeString": "int_const 0" } ], - "id": 1044, + "id": 964, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16403:7:0", + "src": "15386:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1043, + "id": 963, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16403:7:0", + "src": "15386:7:0", "typeDescriptions": {} } }, - "id": 1046, + "id": 966, "isConstant": false, "isLValue": false, "isPure": true, @@ -29755,7 +28263,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16403:10:0", + "src": "15386:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29763,12 +28271,12 @@ } }, { - "id": 1047, + "id": 967, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1018, - "src": "16415:7:0", + "referencedDeclaration": 938, + "src": "15398:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29790,18 +28298,18 @@ "typeString": "uint256" } ], - "id": 1041, + "id": 961, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "16384:8:0", + "referencedDeclaration": 59, + "src": "15367:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1048, + "id": 968, "isConstant": false, "isLValue": false, "isPure": false, @@ -29809,45 +28317,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16384:39:0", + "src": "15367:39:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 969, "nodeType": "EmitStatement", - "src": "16379:44:0" + "src": "15362:44:0" } ] }, "documentation": { - "id": 1014, + "id": 934, "nodeType": "StructuredDocumentation", - "src": "15968:178:0", + "src": "14951:178:0", "text": " @dev Internal function to burn tokens for the user\n @param _account The address whose tokens to burn\n @param _amount The quantity of tokens to burn" }, - "id": 1051, + "id": 971, "implemented": true, "kind": "function", "modifiers": [], "name": "_burn", - "nameLocation": "16160:5:0", + "nameLocation": "15143:5:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1019, + "id": 939, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1016, + "id": 936, "mutability": "mutable", "name": "_account", - "nameLocation": "16174:8:0", + "nameLocation": "15157:8:0", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "16166:16:0", + "scope": 971, + "src": "15149:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29855,10 +28363,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 935, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16166:7:0", + "src": "15149:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -29869,13 +28377,13 @@ }, { "constant": false, - "id": 1018, + "id": 938, "mutability": "mutable", "name": "_amount", - "nameLocation": "16192:7:0", + "nameLocation": "15175:7:0", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "16184:15:0", + "scope": 971, + "src": "15167:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29883,10 +28391,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1017, + "id": 937, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "16184:7:0", + "src": "15167:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29895,25 +28403,25 @@ "visibility": "internal" } ], - "src": "16165:35:0" + "src": "15148:35:0" }, "returnParameters": { - "id": 1020, + "id": 940, "nodeType": "ParameterList", "parameters": [], - "src": "16218:0:0" + "src": "15201:0:0" }, - "scope": 1176, - "src": "16151:279:0", + "scope": 1096, + "src": "15134:279:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "body": { - "id": 1088, + "id": 1008, "nodeType": "Block", - "src": "16699:210:0", + "src": "15682:210:0", "statements": [ { "expression": { @@ -29923,18 +28431,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1065, + "id": 985, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1060, + "id": 980, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "16717:8:0", + "referencedDeclaration": 974, + "src": "15700:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29946,14 +28454,14 @@ "arguments": [ { "hexValue": "30", - "id": 1063, + "id": 983, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16737:1:0", + "src": "15720:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -29968,26 +28476,26 @@ "typeString": "int_const 0" } ], - "id": 1062, + "id": 982, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16729:7:0", + "src": "15712:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1061, + "id": 981, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16729:7:0", + "src": "15712:7:0", "typeDescriptions": {} } }, - "id": 1064, + "id": 984, "isConstant": false, "isLValue": false, "isPure": true, @@ -29995,14 +28503,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16729:10:0", + "src": "15712:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "16717:22:0", + "src": "15700:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -30010,14 +28518,14 @@ }, { "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", - "id": 1066, + "id": 986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16741:33:0", + "src": "15724:33:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", "typeString": "literal_string \"ERC20: mint to the zero address\"" @@ -30036,7 +28544,7 @@ "typeString": "literal_string \"ERC20: mint to the zero address\"" } ], - "id": 1059, + "id": 979, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -30044,13 +28552,13 @@ -18 ], "referencedDeclaration": -18, - "src": "16709:7:0", + "src": "15692:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1067, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, @@ -30058,31 +28566,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16709:66:0", + "src": "15692:66:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1068, + "id": 988, "nodeType": "ExpressionStatement", - "src": "16709:66:0" + "src": "15692:66:0" }, { "expression": { - "id": 1071, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1069, + "id": 989, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "16785:12:0", + "referencedDeclaration": 119, + "src": "15768:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30091,55 +28599,55 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 1070, + "id": 990, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1056, - "src": "16801:7:0", + "referencedDeclaration": 976, + "src": "15784:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16785:23:0", + "src": "15768:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1072, + "id": 992, "nodeType": "ExpressionStatement", - "src": "16785:23:0" + "src": "15768:23:0" }, { "expression": { - "id": 1077, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1073, + "id": 993, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "16818:9:0", + "referencedDeclaration": 110, + "src": "15801:9:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1075, + "id": 995, "indexExpression": { - "id": 1074, + "id": 994, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "16828:8:0", + "referencedDeclaration": 974, + "src": "15811:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30150,7 +28658,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "16818:19:0", + "src": "15801:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30159,26 +28667,26 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 1076, + "id": 996, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1056, - "src": "16841:7:0", + "referencedDeclaration": 976, + "src": "15824:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16818:30:0", + "src": "15801:30:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 998, "nodeType": "ExpressionStatement", - "src": "16818:30:0" + "src": "15801:30:0" }, { "eventCall": { @@ -30187,14 +28695,14 @@ "arguments": [ { "hexValue": "30", - "id": 1082, + "id": 1002, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16880:1:0", + "src": "15863:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -30209,26 +28717,26 @@ "typeString": "int_const 0" } ], - "id": 1081, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16872:7:0", + "src": "15855:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1080, + "id": 1000, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16872:7:0", + "src": "15855:7:0", "typeDescriptions": {} } }, - "id": 1083, + "id": 1003, "isConstant": false, "isLValue": false, "isPure": true, @@ -30236,7 +28744,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16872:10:0", + "src": "15855:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30244,24 +28752,24 @@ } }, { - "id": 1084, + "id": 1004, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "16884:8:0", + "referencedDeclaration": 974, + "src": "15867:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1085, + "id": 1005, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1056, - "src": "16894:7:0", + "referencedDeclaration": 976, + "src": "15877:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30283,18 +28791,18 @@ "typeString": "uint256" } ], - "id": 1079, + "id": 999, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "16863:8:0", + "referencedDeclaration": 59, + "src": "15846:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1086, + "id": 1006, "isConstant": false, "isLValue": false, "isPure": false, @@ -30302,45 +28810,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16863:39:0", + "src": "15846:39:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1087, + "id": 1007, "nodeType": "EmitStatement", - "src": "16858:44:0" + "src": "15841:44:0" } ] }, "documentation": { - "id": 1052, + "id": 972, "nodeType": "StructuredDocumentation", - "src": "16436:191:0", + "src": "15419:191:0", "text": " @dev Internal function to create new tokens for the user\n @param _account The address which receives minted tokens\n @param _amount The quantity of tokens to min" }, - "id": 1089, + "id": 1009, "implemented": true, "kind": "function", "modifiers": [], "name": "_mint", - "nameLocation": "16641:5:0", + "nameLocation": "15624:5:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1057, + "id": 977, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1054, + "id": 974, "mutability": "mutable", "name": "_account", - "nameLocation": "16655:8:0", + "nameLocation": "15638:8:0", "nodeType": "VariableDeclaration", - "scope": 1089, - "src": "16647:16:0", + "scope": 1009, + "src": "15630:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30348,10 +28856,10 @@ "typeString": "address" }, "typeName": { - "id": 1053, + "id": 973, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16647:7:0", + "src": "15630:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -30362,13 +28870,13 @@ }, { "constant": false, - "id": 1056, + "id": 976, "mutability": "mutable", "name": "_amount", - "nameLocation": "16673:7:0", + "nameLocation": "15656:7:0", "nodeType": "VariableDeclaration", - "scope": 1089, - "src": "16665:15:0", + "scope": 1009, + "src": "15648:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30376,10 +28884,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1055, + "id": 975, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "16665:7:0", + "src": "15648:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30388,25 +28896,25 @@ "visibility": "internal" } ], - "src": "16646:35:0" + "src": "15629:35:0" }, "returnParameters": { - "id": 1058, + "id": 978, "nodeType": "ParameterList", "parameters": [], - "src": "16699:0:0" + "src": "15682:0:0" }, - "scope": 1176, - "src": "16632:277:0", + "scope": 1096, + "src": "15615:277:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "body": { - "id": 1137, + "id": 1057, "nodeType": "Block", - "src": "17269:338:0", + "src": "16252:338:0", "statements": [ { "expression": { @@ -30416,18 +28924,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1105, + "id": 1025, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1100, + "id": 1020, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "17287:7:0", + "referencedDeclaration": 1012, + "src": "16270:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30439,14 +28947,14 @@ "arguments": [ { "hexValue": "30", - "id": 1103, + "id": 1023, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17306:1:0", + "src": "16289:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -30461,26 +28969,26 @@ "typeString": "int_const 0" } ], - "id": 1102, + "id": 1022, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17298:7:0", + "src": "16281:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1101, + "id": 1021, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17298:7:0", + "src": "16281:7:0", "typeDescriptions": {} } }, - "id": 1104, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": true, @@ -30488,14 +28996,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17298:10:0", + "src": "16281:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "17287:21:0", + "src": "16270:21:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -30503,14 +29011,14 @@ }, { "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", - "id": 1106, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "17310:39:0", + "src": "16293:39:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", "typeString": "literal_string \"ERC20: transfer from the zero address\"" @@ -30529,7 +29037,7 @@ "typeString": "literal_string \"ERC20: transfer from the zero address\"" } ], - "id": 1099, + "id": 1019, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -30537,13 +29045,13 @@ -18 ], "referencedDeclaration": -18, - "src": "17279:7:0", + "src": "16262:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1107, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, @@ -30551,16 +29059,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17279:71:0", + "src": "16262:71:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1108, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "17279:71:0" + "src": "16262:71:0" }, { "expression": { @@ -30570,18 +29078,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1115, + "id": 1035, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1110, + "id": 1030, "name": "_recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1094, - "src": "17381:10:0", + "referencedDeclaration": 1014, + "src": "16364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30593,14 +29101,14 @@ "arguments": [ { "hexValue": "30", - "id": 1113, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17403:1:0", + "src": "16386:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -30615,26 +29123,26 @@ "typeString": "int_const 0" } ], - "id": 1112, + "id": 1032, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17395:7:0", + "src": "16378:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1111, + "id": 1031, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17395:7:0", + "src": "16378:7:0", "typeDescriptions": {} } }, - "id": 1114, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": true, @@ -30642,14 +29150,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17395:10:0", + "src": "16378:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "17381:24:0", + "src": "16364:24:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -30657,14 +29165,14 @@ }, { "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 1116, + "id": 1036, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "17419:37:0", + "src": "16402:37:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", "typeString": "literal_string \"ERC20: transfer to the zero address\"" @@ -30683,7 +29191,7 @@ "typeString": "literal_string \"ERC20: transfer to the zero address\"" } ], - "id": 1109, + "id": 1029, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -30691,13 +29199,13 @@ -18 ], "referencedDeclaration": -18, - "src": "17360:7:0", + "src": "16343:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1117, + "id": 1037, "isConstant": false, "isLValue": false, "isPure": false, @@ -30705,45 +29213,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17360:106:0", + "src": "16343:106:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1118, + "id": 1038, "nodeType": "ExpressionStatement", - "src": "17360:106:0" + "src": "16343:106:0" }, { "expression": { - "id": 1123, + "id": 1043, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1119, + "id": 1039, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "17476:9:0", + "referencedDeclaration": 110, + "src": "16459:9:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1121, + "id": 1041, "indexExpression": { - "id": 1120, + "id": 1040, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "17486:7:0", + "referencedDeclaration": 1012, + "src": "16469:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30754,7 +29262,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17476:18:0", + "src": "16459:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30763,55 +29271,55 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 1122, + "id": 1042, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1096, - "src": "17498:7:0", + "referencedDeclaration": 1016, + "src": "16481:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17476:29:0", + "src": "16459:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1124, + "id": 1044, "nodeType": "ExpressionStatement", - "src": "17476:29:0" + "src": "16459:29:0" }, { "expression": { - "id": 1129, + "id": 1049, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1125, + "id": 1045, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "17515:9:0", + "referencedDeclaration": 110, + "src": "16498:9:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1127, + "id": 1047, "indexExpression": { - "id": 1126, + "id": 1046, "name": "_recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1094, - "src": "17525:10:0", + "referencedDeclaration": 1014, + "src": "16508:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30822,7 +29330,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17515:21:0", + "src": "16498:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30831,61 +29339,61 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 1128, + "id": 1048, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1096, - "src": "17540:7:0", + "referencedDeclaration": 1016, + "src": "16523:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17515:32:0", + "src": "16498:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1130, + "id": 1050, "nodeType": "ExpressionStatement", - "src": "17515:32:0" + "src": "16498:32:0" }, { "eventCall": { "arguments": [ { - "id": 1132, + "id": 1052, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "17571:7:0", + "referencedDeclaration": 1012, + "src": "16554:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1133, + "id": 1053, "name": "_recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1094, - "src": "17580:10:0", + "referencedDeclaration": 1014, + "src": "16563:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1134, + "id": 1054, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1096, - "src": "17592:7:0", + "referencedDeclaration": 1016, + "src": "16575:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30907,18 +29415,18 @@ "typeString": "uint256" } ], - "id": 1131, + "id": 1051, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "17562:8:0", + "referencedDeclaration": 59, + "src": "16545:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1135, + "id": 1055, "isConstant": false, "isLValue": false, "isPure": false, @@ -30926,45 +29434,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17562:38:0", + "src": "16545:38:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1136, + "id": 1056, "nodeType": "EmitStatement", - "src": "17557:43:0" + "src": "16540:43:0" } ] }, "documentation": { - "id": 1090, + "id": 1010, "nodeType": "StructuredDocumentation", - "src": "16915:229:0", + "src": "15898:229:0", "text": " @dev Internal function to perform token transfer\n @param _sender The address which owns the tokens\n @param _recipient The destination address\n @param _amount The quantity of tokens to transfer" }, - "id": 1138, + "id": 1058, "implemented": true, "kind": "function", "modifiers": [], "name": "_transfer", - "nameLocation": "17158:9:0", + "nameLocation": "16141:9:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1097, + "id": 1017, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1092, + "id": 1012, "mutability": "mutable", "name": "_sender", - "nameLocation": "17185:7:0", + "nameLocation": "16168:7:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "17177:15:0", + "scope": 1058, + "src": "16160:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30972,10 +29480,10 @@ "typeString": "address" }, "typeName": { - "id": 1091, + "id": 1011, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17177:7:0", + "src": "16160:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -30986,13 +29494,13 @@ }, { "constant": false, - "id": 1094, + "id": 1014, "mutability": "mutable", "name": "_recipient", - "nameLocation": "17210:10:0", + "nameLocation": "16193:10:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "17202:18:0", + "scope": 1058, + "src": "16185:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31000,10 +29508,10 @@ "typeString": "address" }, "typeName": { - "id": 1093, + "id": 1013, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17202:7:0", + "src": "16185:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -31014,13 +29522,13 @@ }, { "constant": false, - "id": 1096, + "id": 1016, "mutability": "mutable", "name": "_amount", - "nameLocation": "17238:7:0", + "nameLocation": "16221:7:0", "nodeType": "VariableDeclaration", - "scope": 1138, - "src": "17230:15:0", + "scope": 1058, + "src": "16213:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31028,10 +29536,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1095, + "id": 1015, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "17230:7:0", + "src": "16213:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31040,60 +29548,60 @@ "visibility": "internal" } ], - "src": "17167:84:0" + "src": "16150:84:0" }, "returnParameters": { - "id": 1098, + "id": 1018, "nodeType": "ParameterList", "parameters": [], - "src": "17269:0:0" + "src": "16252:0:0" }, - "scope": 1176, - "src": "17149:458:0", + "scope": 1096, + "src": "16132:458:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "body": { - "id": 1174, + "id": 1094, "nodeType": "Block", - "src": "18058:209:0", + "src": "17041:209:0", "statements": [ { "expression": { "arguments": [ { - "id": 1151, + "id": 1071, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1141, - "src": "18078:7:0", + "referencedDeclaration": 1061, + "src": "17061:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1152, + "id": 1072, "name": "_recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "18087:10:0", + "referencedDeclaration": 1063, + "src": "17070:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1153, + "id": 1073, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1145, - "src": "18099:7:0", + "referencedDeclaration": 1065, + "src": "17082:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31115,18 +29623,18 @@ "typeString": "uint256" } ], - "id": 1150, + "id": 1070, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1138, - "src": "18068:9:0", + "referencedDeclaration": 1058, + "src": "17051:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1154, + "id": 1074, "isConstant": false, "isLValue": false, "isPure": false, @@ -31134,27 +29642,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18068:39:0", + "src": "17051:39:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1155, + "id": 1075, "nodeType": "ExpressionStatement", - "src": "18068:39:0" + "src": "17051:39:0" }, { "expression": { "arguments": [ { - "id": 1157, + "id": 1077, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1141, - "src": "18139:7:0", + "referencedDeclaration": 1061, + "src": "17122:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31162,25 +29670,25 @@ }, { "expression": { - "id": 1158, + "id": 1078, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "18160:3:0", + "src": "17143:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1159, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "18160:10:0", + "src": "17143:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31191,7 +29699,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1169, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, @@ -31199,25 +29707,25 @@ "leftExpression": { "baseExpression": { "baseExpression": { - "id": 1160, + "id": 1080, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "18184:11:0", + "referencedDeclaration": 106, + "src": "17167:11:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 1162, + "id": 1082, "indexExpression": { - "id": 1161, + "id": 1081, "name": "_sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1141, - "src": "18196:7:0", + "referencedDeclaration": 1061, + "src": "17179:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31228,24 +29736,24 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18184:20:0", + "src": "17167:20:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1167, + "id": 1087, "indexExpression": { "arguments": [ { - "id": 1165, + "id": 1085, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "18213:4:0", + "src": "17196:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } } @@ -31253,30 +29761,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_TellorPlayground_$1176", + "typeIdentifier": "t_contract$_TellorPlayground_$1096", "typeString": "contract TellorPlayground" } ], - "id": 1164, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18205:7:0", + "src": "17188:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1163, + "id": 1083, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18205:7:0", + "src": "17188:7:0", "typeDescriptions": {} } }, - "id": 1166, + "id": 1086, "isConstant": false, "isLValue": false, "isPure": false, @@ -31284,7 +29792,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18205:13:0", + "src": "17188:13:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31296,7 +29804,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18184:35:0", + "src": "17167:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31305,18 +29813,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 1168, + "id": 1088, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1145, - "src": "18222:7:0", + "referencedDeclaration": 1065, + "src": "17205:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18184:45:0", + "src": "17167:45:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31338,18 +29846,18 @@ "typeString": "uint256" } ], - "id": 1156, + "id": 1076, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1013, - "src": "18117:8:0", + "referencedDeclaration": 933, + "src": "17100:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1170, + "id": 1090, "isConstant": false, "isLValue": false, "isPure": false, @@ -31357,67 +29865,67 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18117:122:0", + "src": "17100:122:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1171, + "id": 1091, "nodeType": "ExpressionStatement", - "src": "18117:122:0" + "src": "17100:122:0" }, { "expression": { "hexValue": "74727565", - "id": 1172, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "18256:4:0", + "src": "17239:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 1149, - "id": 1173, + "functionReturnParameters": 1069, + "id": 1093, "nodeType": "Return", - "src": "18249:11:0" + "src": "17232:11:0" } ] }, "documentation": { - "id": 1139, + "id": 1059, "nodeType": "StructuredDocumentation", - "src": "17613:301:0", + "src": "16596:301:0", "text": " @dev Allows this contract to transfer tokens from one user to another\n @param _sender The address which owns the tokens\n @param _recipient The destination address\n @param _amount The quantity of tokens to transfer\n @return bool Whether the transfer succeeded" }, - "id": 1175, + "id": 1095, "implemented": true, "kind": "function", "modifiers": [], "name": "_transferFrom", - "nameLocation": "17928:13:0", + "nameLocation": "16911:13:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 1146, + "id": 1066, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1141, + "id": 1061, "mutability": "mutable", "name": "_sender", - "nameLocation": "17959:7:0", + "nameLocation": "16942:7:0", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "17951:15:0", + "scope": 1095, + "src": "16934:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31425,10 +29933,10 @@ "typeString": "address" }, "typeName": { - "id": 1140, + "id": 1060, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17951:7:0", + "src": "16934:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -31439,13 +29947,13 @@ }, { "constant": false, - "id": 1143, + "id": 1063, "mutability": "mutable", "name": "_recipient", - "nameLocation": "17984:10:0", + "nameLocation": "16967:10:0", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "17976:18:0", + "scope": 1095, + "src": "16959:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31453,10 +29961,10 @@ "typeString": "address" }, "typeName": { - "id": 1142, + "id": 1062, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17976:7:0", + "src": "16959:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -31467,13 +29975,13 @@ }, { "constant": false, - "id": 1145, + "id": 1065, "mutability": "mutable", "name": "_amount", - "nameLocation": "18012:7:0", + "nameLocation": "16995:7:0", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "18004:15:0", + "scope": 1095, + "src": "16987:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31481,10 +29989,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1144, + "id": 1064, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "18004:7:0", + "src": "16987:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31493,21 +30001,21 @@ "visibility": "internal" } ], - "src": "17941:84:0" + "src": "16924:84:0" }, "returnParameters": { - "id": 1149, + "id": 1069, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1148, + "id": 1068, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "18052:4:0", + "scope": 1095, + "src": "17035:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31515,10 +30023,10 @@ "typeString": "bool" }, "typeName": { - "id": 1147, + "id": 1067, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "18052:4:0", + "src": "17035:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -31527,20 +30035,20 @@ "visibility": "internal" } ], - "src": "18051:6:0" + "src": "17034:6:0" }, - "scope": 1176, - "src": "17919:348:0", + "scope": 1096, + "src": "16902:348:0", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" } ], - "scope": 1177, - "src": "57:18212:0" + "scope": 1097, + "src": "57:17195:0" } ], - "src": "32:18238:0" + "src": "32:17220:0" }, "id": 0 } diff --git a/artifacts/build-info/d46c8c3bbd24a5104f77a50713652796.json b/artifacts/build-info/d46c8c3bbd24a5104f77a50713652796.json new file mode 100644 index 0000000..52b0169 --- /dev/null +++ b/artifacts/build-info/d46c8c3bbd24a5104f77a50713652796.json @@ -0,0 +1,35120 @@ +{ + "id": "d46c8c3bbd24a5104f77a50713652796", + "_format": "hh-sol-build-info-1", + "solcVersion": "0.8.3", + "solcLongVersion": "0.8.3+commit.8d00100c", + "input": { + "language": "Solidity", + "sources": { + "contracts/interface/ITellor.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.0;\n\ninterface ITellor{\n //Controller\n function addresses(bytes32) external view returns(address);\n function uints(bytes32) external view returns(uint256);\n function burn(uint256 _amount) external;\n function changeDeity(address _newDeity) external;\n function changeOwner(address _newOwner) external;\n function changeTellorContract(address _tContract) external;\n function changeControllerContract(address _newController) external;\n function changeGovernanceContract(address _newGovernance) external;\n function changeOracleContract(address _newOracle) external;\n function changeTreasuryContract(address _newTreasury) external;\n function changeUint(bytes32 _target, uint256 _amount) external;\n function migrate() external;\n function mint(address _reciever, uint256 _amount) external;\n function init() external;\n function getAllDisputeVars(uint256 _disputeId) external view returns (bytes32,bool,bool,bool,address,address,address,uint256[9] memory,int256);\n function getDisputeIdByDisputeHash(bytes32 _hash) external view returns (uint256);\n function getDisputeUintVars(uint256 _disputeId, bytes32 _data) external view returns(uint256);\n function getLastNewValueById(uint256 _requestId) external view returns (uint256, bool);\n function retrieveData(uint256 _requestId, uint256 _timestamp) external view returns (uint256);\n function getNewValueCountbyRequestId(uint256 _requestId) external view returns (uint256);\n function getAddressVars(bytes32 _data) external view returns (address);\n function getUintVar(bytes32 _data) external view returns (uint256);\n function totalSupply() external view returns (uint256);\n function name() external pure returns (string memory);\n function symbol() external pure returns (string memory);\n function decimals() external pure returns (uint8);\n function isMigrated(address _addy) external view returns (bool);\n function allowance(address _user, address _spender) external view returns (uint256);\n function allowedToTrade(address _user, uint256 _amount) external view returns (bool);\n function approve(address _spender, uint256 _amount) external returns (bool);\n function approveAndTransferFrom(address _from, address _to, uint256 _amount) external returns(bool);\n function balanceOf(address _user) external view returns (uint256);\n function balanceOfAt(address _user, uint256 _blockNumber)external view returns (uint256);\n function transfer(address _to, uint256 _amount)external returns (bool success);\n function transferFrom(address _from,address _to,uint256 _amount) external returns (bool success) ;\n function depositStake() external;\n function requestStakingWithdraw() external;\n function withdrawStake() external;\n function changeStakingStatus(address _reporter, uint _status) external;\n function slashReporter(address _reporter, address _disputer) external;\n function getStakerInfo(address _staker) external view returns (uint256, uint256);\n function getTimestampbyRequestIDandIndex(uint256 _requestId, uint256 _index) external view returns (uint256);\n function getNewCurrentVariables()external view returns (bytes32 _c,uint256[5] memory _r,uint256 _d,uint256 _t);\n function getNewValueCountbyQueryId(bytes32 _queryId) external view returns(uint256);\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index) external view returns(uint256);\n function retrieveData(bytes32 _queryId, uint256 _timestamp) external view returns(bytes memory);\n //Governance\n enum VoteResult {FAILED,PASSED,INVALID}\n function setApprovedFunction(bytes4 _func, bool _val) external;\n function beginDispute(bytes32 _queryId,uint256 _timestamp) external;\n function delegate(address _delegate) external;\n function delegateOfAt(address _user, uint256 _blockNumber) external view returns (address);\n function executeVote(uint256 _disputeId) external;\n function proposeVote(address _contract,bytes4 _function, bytes calldata _data, uint256 _timestamp) external;\n function tallyVotes(uint256 _disputeId) external;\n function governance() external view returns (address);\n function updateMinDisputeFee() external;\n function verify() external pure returns(uint);\n function vote(uint256 _disputeId, bool _supports, bool _invalidQuery) external;\n function voteFor(address[] calldata _addys,uint256 _disputeId, bool _supports, bool _invalidQuery) external;\n function getDelegateInfo(address _holder) external view returns(address,uint);\n function isFunctionApproved(bytes4 _func) external view returns(bool);\n function isApprovedGovernanceContract(address _contract) external returns (bool);\n function getVoteRounds(bytes32 _hash) external view returns(uint256[] memory);\n function getVoteCount() external view returns(uint256);\n function getVoteInfo(uint256 _disputeId) external view returns(bytes32,uint256[9] memory,bool[2] memory,VoteResult,bytes memory,bytes4,address[2] memory);\n function getDisputeInfo(uint256 _disputeId) external view returns(uint256,uint256,bytes memory, address);\n function getOpenDisputesOnId(bytes32 _queryId) external view returns(uint256);\n function didVote(uint256 _disputeId, address _voter) external view returns(bool);\n //Oracle\n function getReportTimestampByIndex(bytes32 _queryId, uint256 _index) external view returns(uint256);\n function getValueByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(bytes memory);\n function getBlockNumberByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(uint256);\n function getReportingLock() external view returns(uint256);\n function getReporterByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(address);\n function reportingLock() external view returns(uint256);\n function removeValue(bytes32 _queryId, uint256 _timestamp) external;\n function getReportsSubmittedByAddress(address _reporter) external view returns(uint256);\n function getTipsByUser(address _user) external view returns(uint256);\n function tipQuery(bytes32 _queryId, uint256 _tip, bytes memory _queryData) external;\n function submitValue(bytes32 _queryId, bytes calldata _value, uint256 _nonce, bytes memory _queryData) external;\n function burnTips() external;\n function changeReportingLock(uint256 _newReportingLock) external;\n function changeTimeBasedReward(uint256 _newTimeBasedReward) external;\n function getReporterLastTimestamp(address _reporter) external view returns(uint256);\n function getTipsById(bytes32 _queryId) external view returns(uint256);\n function getTimeBasedReward() external view returns(uint256);\n function getTimestampCountById(bytes32 _queryId) external view returns(uint256);\n function getTimestampIndexByTimestamp(bytes32 _queryId, uint256 _timestamp) external view returns(uint256);\n function getCurrentReward(bytes32 _queryId) external view returns(uint256, uint256);\n function getCurrentValue(bytes32 _queryId) external view returns(bytes memory);\n function getTimeOfLastNewValue() external view returns(uint256);\n //Treasury\n function issueTreasury(uint256 _maxAmount, uint256 _rate, uint256 _duration) external;\n function payTreasury(address _investor,uint256 _id) external;\n function buyTreasury(uint256 _id,uint256 _amount) external;\n function getTreasuryDetails(uint256 _id) external view returns(uint256,uint256,uint256,uint256);\n function getTreasuryFundsByUser(address _user) external view returns(uint256);\n function getTreasuryAccount(uint256 _id, address _investor) external view returns(uint256,uint256,bool);\n function getTreasuryCount() external view returns(uint256);\n function getTreasuryOwners(uint256 _id) external view returns(address[] memory);\n function wasPaid(uint256 _id, address _investor) external view returns(bool);\n //Test functions\n function changeAddressVar(bytes32 _id, address _addy) external;\n\n //parachute functions\n function killContract() external;\n function migrateFor(address _destination,uint256 _amount) external;\n function rescue51PercentAttack(address _tokenHolder) external;\n function rescueBrokenDataReporting() external;\n function rescueFailedUpdate() external;\n\n //Tellor 360\n function addStakingRewards(uint256 _amount) external;\n}\n" + }, + "contracts/UsingTellor.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.0;\n\nimport \"./interface/ITellor.sol\";\n\n/**\n * @title UserContract\n * This contract allows for easy integration with the Tellor System\n * by helping smart contracts to read data from Tellor\n */\ncontract UsingTellor {\n ITellor public tellor;\n\n /*Constructor*/\n /**\n * @dev the constructor sets the tellor address in storage\n * @param _tellor is the TellorMaster address\n */\n constructor(address payable _tellor) {\n tellor = ITellor(_tellor);\n }\n\n /*Getters*/\n /**\n * @dev Allows the user to get the latest value for the queryId specified\n * @param _queryId is the id to look up the value for\n * @return _ifRetrieve bool true if non-zero value successfully retrieved\n * @return _value the value retrieved\n * @return _timestampRetrieved the retrieved value's timestamp\n */\n function getCurrentValue(bytes32 _queryId)\n public\n view\n returns (\n bool _ifRetrieve,\n bytes memory _value,\n uint256 _timestampRetrieved\n )\n {\n uint256 _count = getNewValueCountbyQueryId(_queryId);\n\n if (_count == 0) {\n return (false, bytes(\"\"), 0);\n }\n uint256 _time = getTimestampbyQueryIdandIndex(_queryId, _count - 1);\n _value = retrieveData(_queryId, _time);\n if (keccak256(_value) != keccak256(bytes(\"\")))\n return (true, _value, _time);\n return (false, bytes(\"\"), _time);\n }\n\n /**\n * @dev Retrieves the latest value for the queryId before the specified timestamp\n * @param _queryId is the queryId to look up the value for\n * @param _timestamp before which to search for latest value\n * @return _ifRetrieve bool true if able to retrieve a non-zero value\n * @return _value the value retrieved\n * @return _timestampRetrieved the value's timestamp\n */\n function getDataBefore(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (\n bool _ifRetrieve,\n bytes memory _value,\n uint256 _timestampRetrieved\n )\n {\n (bool _found, uint256 _index) = getIndexForDataBefore(\n _queryId,\n _timestamp\n );\n if (!_found) return (false, bytes(\"\"), 0);\n uint256 _time = getTimestampbyQueryIdandIndex(_queryId, _index);\n _value = retrieveData(_queryId, _time);\n if (keccak256(_value) != keccak256(bytes(\"\")))\n return (true, _value, _time);\n return (false, bytes(\"\"), 0);\n }\n\n /**\n * @dev Retrieves latest array index of data before the specified timestamp for the queryId\n * @param _queryId is the queryId to look up the index for\n * @param _timestamp is the timestamp before which to search for the latest index\n * @return _found whether the index was found\n * @return _index the latest index found before the specified timestamp\n */\n // slither-disable-next-line calls-loop\n function getIndexForDataBefore(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bool _found, uint256 _index)\n {\n uint256 _count = getNewValueCountbyQueryId(_queryId);\n\n if (_count > 0) {\n uint256 middle;\n uint256 start = 0;\n uint256 end = _count - 1;\n uint256 _time;\n\n //Checking Boundaries to short-circuit the algorithm\n _time = getTimestampbyQueryIdandIndex(_queryId, start);\n if (_time >= _timestamp) return (false, 0);\n _time = getTimestampbyQueryIdandIndex(_queryId, end);\n if (_time < _timestamp) return (true, end);\n\n //Since the value is within our boundaries, do a binary search\n while (true) {\n middle = (end - start) / 2 + 1 + start;\n _time = getTimestampbyQueryIdandIndex(_queryId, middle);\n if (_time < _timestamp) {\n //get immediate next value\n uint256 _nextTime = getTimestampbyQueryIdandIndex(\n _queryId,\n middle + 1\n );\n if (_nextTime >= _timestamp) {\n //_time is correct\n return (true, middle);\n } else {\n //look from middle + 1(next value) to end\n start = middle + 1;\n }\n } else {\n uint256 _prevTime = getTimestampbyQueryIdandIndex(\n _queryId,\n middle - 1\n );\n if (_prevTime < _timestamp) {\n // _prevtime is correct\n return (true, middle - 1);\n } else {\n //look from start to middle -1(prev value)\n end = middle - 1;\n }\n }\n //We couldn't find a value\n //if(middle - 1 == start || middle == _count) return (false, 0);\n }\n }\n return (false, 0);\n }\n\n /**\n * @dev Counts the number of values that have been submitted for the queryId\n * @param _queryId the id to look up\n * @return uint256 count of the number of values received for the queryId\n */\n function getNewValueCountbyQueryId(bytes32 _queryId)\n public\n view\n returns (uint256)\n {\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n return tellor.getTimestampCountById(_queryId);\n } else {\n return tellor.getNewValueCountbyQueryId(_queryId);\n }\n }\n\n // /**\n // * @dev Gets the timestamp for the value based on their index\n // * @param _queryId is the id to look up\n // * @param _index is the value index to look up\n // * @return uint256 timestamp\n // */\n function getTimestampbyQueryIdandIndex(bytes32 _queryId, uint256 _index)\n public\n view\n returns (uint256)\n {\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n return tellor.getReportTimestampByIndex(_queryId, _index);\n } else {\n return tellor.getTimestampbyQueryIdandIndex(_queryId, _index);\n }\n }\n\n /**\n * @dev Determines whether a value with a given queryId and timestamp has been disputed\n * @param _queryId is the value id to look up\n * @param _timestamp is the timestamp of the value to look up\n * @return bool true if queryId/timestamp is under dispute\n */\n function isInDispute(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bool)\n {\n ITellor _governance;\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n ITellor _newTellor = ITellor(\n 0x88dF592F8eb5D7Bd38bFeF7dEb0fBc02cf3778a0\n );\n _governance = ITellor(\n _newTellor.addresses(\n 0xefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93\n )\n );\n } else {\n _governance = ITellor(tellor.governance());\n }\n return\n _governance\n .getVoteRounds(\n keccak256(abi.encodePacked(_queryId, _timestamp))\n )\n .length > 0;\n }\n\n /**\n * @dev Retrieve value from oracle based on queryId/timestamp\n * @param _queryId being requested\n * @param _timestamp to retrieve data/value from\n * @return bytes value for query/timestamp submitted\n */\n function retrieveData(bytes32 _queryId, uint256 _timestamp)\n public\n view\n returns (bytes memory)\n {\n //tellorx check rinkeby/ethereum\n if (\n tellor == ITellor(0x18431fd88adF138e8b979A7246eb58EA7126ea16) ||\n tellor == ITellor(0xe8218cACb0a5421BC6409e498d9f8CC8869945ea)\n ) {\n return tellor.getValueByTimestamp(_queryId, _timestamp);\n } else {\n return tellor.retrieveData(_queryId, _timestamp);\n }\n }\n}\n" + }, + "contracts/mocks/BenchUsingTellor.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity >=0.8.0;\n\nimport \"../UsingTellor.sol\";\n\n/**\n* @title UserContract\n* This contract inherits UsingTellor for simulating user interaction\n*/\ncontract BenchUsingTellor is UsingTellor{\n\n constructor(address payable _tellor) UsingTellor(_tellor) {}\n}\n" + } + }, + "settings": { + "optimizer": { + "enabled": false, + "runs": 200 + }, + "outputSelection": { + "*": { + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ], + "": [ + "ast" + ] + } + } + } + }, + "output": { + "contracts": { + "contracts/UsingTellor.sol": { + "UsingTellor": { + "abi": [ + { + "inputs": [ + { + "internalType": "address payable", + "name": "_tellor", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getCurrentValue", + "outputs": [ + { + "internalType": "bool", + "name": "_ifRetrieve", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "_value", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_timestampRetrieved", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getDataBefore", + "outputs": [ + { + "internalType": "bool", + "name": "_ifRetrieve", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "_value", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_timestampRetrieved", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getIndexForDataBefore", + "outputs": [ + { + "internalType": "bool", + "name": "_found", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getNewValueCountbyQueryId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "name": "getTimestampbyQueryIdandIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "isInDispute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "retrieveData", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "tellor", + "outputs": [ + { + "internalType": "contract ITellor", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:861:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "78:88:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "88:22:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "103:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "97:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "97:13:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "88:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "154:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_address_payable", + "nodeType": "YulIdentifier", + "src": "119:34:3" + }, + "nodeType": "YulFunctionCall", + "src": "119:41:3" + }, + "nodeType": "YulExpressionStatement", + "src": "119:41:3" + } + ] + }, + "name": "abi_decode_t_address_payable_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "56:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "64:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "72:5:3", + "type": "" + } + ], + "src": "7:159:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "257:215:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "303:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "312:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "315:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "305:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "305:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "305:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "278:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "287:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "274:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "274:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "299:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "270:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "270:32:3" + }, + "nodeType": "YulIf", + "src": "267:2:3" + }, + { + "nodeType": "YulBlock", + "src": "329:136:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "344:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "358:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "348:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "373:82:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "427:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "438:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "423:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "423:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "447:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_address_payable_fromMemory", + "nodeType": "YulIdentifier", + "src": "383:39:3" + }, + "nodeType": "YulFunctionCall", + "src": "383:72:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "373:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_payable_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "227:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "238:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "250:6:3", + "type": "" + } + ], + "src": "172:300:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "531:51:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "541:35:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "570:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "552:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "552:24:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "541:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_address_payable", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "513:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "523:7:3", + "type": "" + } + ], + "src": "478:104:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "633:81:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "643:65:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "658:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "665:42:3", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "654:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "654:54:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "643:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "615:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "625:7:3", + "type": "" + } + ], + "src": "588:126:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "771:87:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "836:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "845:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "848:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "838:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "838:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "838:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "794:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "827:5:3" + } + ], + "functionName": { + "name": "cleanup_t_address_payable", + "nodeType": "YulIdentifier", + "src": "801:25:3" + }, + "nodeType": "YulFunctionCall", + "src": "801:32:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "791:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "791:43:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "784:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "784:51:3" + }, + "nodeType": "YulIf", + "src": "781:2:3" + } + ] + }, + "name": "validator_revert_t_address_payable", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "764:5:3", + "type": "" + } + ], + "src": "720:138:3" + } + ] + }, + "contents": "{\n\n function abi_decode_t_address_payable_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_payable_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n}\n", + "id": 3, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60806040523480156200001157600080fd5b506040516200181238038062001812833981810160405281019062000037919062000095565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200010f565b6000815190506200008f81620000f5565b92915050565b600060208284031215620000a857600080fd5b6000620000b8848285016200007e565b91505092915050565b6000620000ce82620000d5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010081620000c1565b81146200010c57600080fd5b50565b6116f3806200011f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220d4412748f7775579c589884c6cce22a64f473d4f91837ee0192e9566e99894fe64736f6c63430008030033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x1812 CODESIZE SUB DUP1 PUSH3 0x1812 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x37 SWAP2 SWAP1 PUSH3 0x95 JUMP JUMPDEST DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP PUSH3 0x10F JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x8F DUP2 PUSH3 0xF5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xA8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH3 0xB8 DUP5 DUP3 DUP6 ADD PUSH3 0x7E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCE DUP3 PUSH3 0xD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0x100 DUP2 PUSH3 0xC1 JUMP JUMPDEST DUP2 EQ PUSH3 0x10C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16F3 DUP1 PUSH3 0x11F PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD4 COINBASE 0x27 0x48 0xF7 PUSH24 0x5579C589884C6CCE22A64F473D4F91837EE0192E9566E998 SWAP5 INVALID PUSH5 0x736F6C6343 STOP ADDMOD SUB STOP CALLER ", + "sourceMap": "247:8373:0:-:0;;;451:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;515:7;498:6;;:25;;;;;;;;;;;;;;;;;;451:79;247:8373;;7:159:3;;103:6;97:13;88:22;;119:41;154:5;119:41;:::i;:::-;78:88;;;;:::o;172:300::-;;299:2;287:9;278:7;274:23;270:32;267:2;;;315:1;312;305:12;267:2;358:1;383:72;447:7;438:6;427:9;423:22;383:72;:::i;:::-;373:82;;329:136;257:215;;;;:::o;478:104::-;;552:24;570:5;552:24;:::i;:::-;541:35;;531:51;;;:::o;588:126::-;;665:42;658:5;654:54;643:65;;633:81;;;:::o;720:138::-;801:32;827:5;801:32;:::i;:::-;794:5;791:43;781:2;;848:1;845;838:12;781:2;771:87;:::o;247:8373:0:-;;;;;;;" + }, + "deployedBytecode": { + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:14118:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "137:532:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "147:90:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "229:6:3" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "172:56:3" + }, + "nodeType": "YulFunctionCall", + "src": "172:64:3" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "156:15:3" + }, + "nodeType": "YulFunctionCall", + "src": "156:81:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "147:5:3" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "246:16:3", + "value": { + "name": "array", + "nodeType": "YulIdentifier", + "src": "257:5:3" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "250:3:3", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "278:5:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "285:6:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "271:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "271:21:3" + }, + "nodeType": "YulExpressionStatement", + "src": "271:21:3" + }, + { + "nodeType": "YulAssignment", + "src": "293:23:3", + "value": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "304:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "311:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "300:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "300:16:3" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "293:3:3" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "325:17:3", + "value": { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "336:6:3" + }, + "variables": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "329:3:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "391:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "400:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "403:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "393:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "393:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "393:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "361:3:3" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "370:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "378:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "366:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "366:17:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "357:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "357:27:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "386:3:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "354:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "354:36:3" + }, + "nodeType": "YulIf", + "src": "351:2:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "476:187:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "490:21:3", + "value": { + "name": "src", + "nodeType": "YulIdentifier", + "src": "508:3:3" + }, + "variables": [ + { + "name": "elementPos", + "nodeType": "YulTypedName", + "src": "494:10:3", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "531:3:3" + }, + { + "arguments": [ + { + "name": "elementPos", + "nodeType": "YulIdentifier", + "src": "568:10:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "580:3:3" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nodeType": "YulIdentifier", + "src": "536:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "536:48:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "524:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "524:61:3" + }, + "nodeType": "YulExpressionStatement", + "src": "524:61:3" + }, + { + "nodeType": "YulAssignment", + "src": "598:21:3", + "value": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "609:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "614:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "605:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "605:14:3" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "598:3:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "632:21:3", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "643:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "648:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "639:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "639:14:3" + }, + "variableNames": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "632:3:3" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "438:1:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "441:6:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "435:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "435:13:3" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "449:18:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "451:14:3", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "460:1:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "463:1:3", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "456:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "456:9:3" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "451:1:3" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "420:14:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "422:10:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "431:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "426:1:3", + "type": "" + } + ] + } + ] + }, + "src": "416:247:3" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "107:6:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "115:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "123:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "131:5:3", + "type": "" + } + ], + "src": "24:645:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "769:258:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "779:74:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "845:6:3" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nodeType": "YulIdentifier", + "src": "804:40:3" + }, + "nodeType": "YulFunctionCall", + "src": "804:48:3" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "788:15:3" + }, + "nodeType": "YulFunctionCall", + "src": "788:65:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "779:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "869:5:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "876:6:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "862:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "862:21:3" + }, + "nodeType": "YulExpressionStatement", + "src": "862:21:3" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "892:27:3", + "value": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "907:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "914:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "903:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "903:16:3" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "896:3:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "957:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "966:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "969:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "959:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "959:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "959:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "938:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "943:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "934:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "934:16:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "952:3:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "931:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "931:25:3" + }, + "nodeType": "YulIf", + "src": "928:2:3" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "1004:3:3" + }, + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "1009:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1014:6:3" + } + ], + "functionName": { + "name": "copy_memory_to_memory", + "nodeType": "YulIdentifier", + "src": "982:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "982:39:3" + }, + "nodeType": "YulExpressionStatement", + "src": "982:39:3" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "742:3:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "747:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "755:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "763:5:3", + "type": "" + } + ], + "src": "675:352:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1096:80:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1106:22:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1121:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1115:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "1115:13:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1106:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1164:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nodeType": "YulIdentifier", + "src": "1137:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "1137:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1137:33:3" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1074:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1082:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1090:5:3", + "type": "" + } + ], + "src": "1033:143:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1287:230:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1336:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1345:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1348:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1338:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1338:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1338:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1315:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1323:4:3", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1311:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1311:17:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1330:3:3" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1307:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1307:27:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1300:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1300:35:3" + }, + "nodeType": "YulIf", + "src": "1297:2:3" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1361:27:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1381:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1375:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "1375:13:3" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1365:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1397:114:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1484:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1492:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1480:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1480:17:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1499:6:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1507:3:3" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "1406:73:3" + }, + "nodeType": "YulFunctionCall", + "src": "1406:105:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "1397:5:3" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1265:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1273:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "1281:5:3", + "type": "" + } + ], + "src": "1199:318:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1575:87:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1585:29:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1607:6:3" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1594:12:3" + }, + "nodeType": "YulFunctionCall", + "src": "1594:20:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1585:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1650:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nodeType": "YulIdentifier", + "src": "1623:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "1623:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1623:33:3" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1553:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1561:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1569:5:3", + "type": "" + } + ], + "src": "1523:139:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1753:214:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1802:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1811:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1814:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1804:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1804:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1804:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1781:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1789:4:3", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1777:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1777:17:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1796:3:3" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1773:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1773:27:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1766:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1766:35:3" + }, + "nodeType": "YulIf", + "src": "1763:2:3" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1827:27:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1847:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1841:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "1841:13:3" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1831:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1863:98:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1934:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1942:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1930:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1930:17:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1949:6:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1957:3:3" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "1872:57:3" + }, + "nodeType": "YulFunctionCall", + "src": "1872:89:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "1863:5:3" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1731:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1739:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "1747:5:3", + "type": "" + } + ], + "src": "1681:286:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2025:87:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2035:29:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2057:6:3" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2044:12:3" + }, + "nodeType": "YulFunctionCall", + "src": "2044:20:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2035:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2100:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nodeType": "YulIdentifier", + "src": "2073:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "2073:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2073:33:3" + } + ] + }, + "name": "abi_decode_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2003:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2011:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2019:5:3", + "type": "" + } + ], + "src": "1973:139:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2181:80:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2191:22:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2206:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2200:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "2200:13:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2191:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2249:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nodeType": "YulIdentifier", + "src": "2222:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "2222:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2222:33:3" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2159:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2167:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2175:5:3", + "type": "" + } + ], + "src": "2118:143:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2344:207:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2390:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2399:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2402:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2392:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "2392:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2392:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2365:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2374:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2361:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2361:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2386:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2357:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2357:32:3" + }, + "nodeType": "YulIf", + "src": "2354:2:3" + }, + { + "nodeType": "YulBlock", + "src": "2416:128:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2431:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2445:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2435:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2460:74:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2506:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2517:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2502:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2502:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2526:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "2470:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "2470:64:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2460:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2314:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2325:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2337:6:3", + "type": "" + } + ], + "src": "2267:284:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2659:318:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2705:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2714:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2717:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2707:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "2707:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2707:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2680:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2689:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2676:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2676:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2701:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2672:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2672:32:3" + }, + "nodeType": "YulIf", + "src": "2669:2:3" + }, + { + "nodeType": "YulBlock", + "src": "2731:239:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2746:38:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2770:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2781:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2766:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2766:17:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2760:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "2760:24:3" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2750:6:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2831:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2840:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2843:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2833:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "2833:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2833:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2803:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2811:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2800:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "2800:30:3" + }, + "nodeType": "YulIf", + "src": "2797:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "2861:99:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2932:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2943:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2928:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2928:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2952:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "2871:56:3" + }, + "nodeType": "YulFunctionCall", + "src": "2871:89:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2861:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2629:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2640:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2652:6:3", + "type": "" + } + ], + "src": "2557:420:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3049:196:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3095:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3104:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3107:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3097:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3097:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3097:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3070:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3079:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3066:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3066:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3091:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3062:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3062:32:3" + }, + "nodeType": "YulIf", + "src": "3059:2:3" + }, + { + "nodeType": "YulBlock", + "src": "3121:117:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3136:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3150:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3140:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3165:63:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3200:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3211:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3196:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3196:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3220:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "3175:20:3" + }, + "nodeType": "YulFunctionCall", + "src": "3175:53:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3165:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3019:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3030:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3042:6:3", + "type": "" + } + ], + "src": "2983:262:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3334:324:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3380:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3389:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3392:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3382:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3382:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3382:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3355:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3364:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3351:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3351:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3376:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3347:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3347:32:3" + }, + "nodeType": "YulIf", + "src": "3344:2:3" + }, + { + "nodeType": "YulBlock", + "src": "3406:117:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3421:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3435:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3425:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3450:63:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3485:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3496:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3481:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3481:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3505:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "3460:20:3" + }, + "nodeType": "YulFunctionCall", + "src": "3460:53:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3450:6:3" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3533:118:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3548:16:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3562:2:3", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3552:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3578:63:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3613:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3624:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3609:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3609:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3633:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "3588:20:3" + }, + "nodeType": "YulFunctionCall", + "src": "3588:53:3" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3578:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3296:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3307:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3319:6:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3327:6:3", + "type": "" + } + ], + "src": "3251:407:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3750:302:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3796:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3805:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3808:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3798:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3798:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3798:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3771:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3780:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3767:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3767:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3792:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3763:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3763:32:3" + }, + "nodeType": "YulIf", + "src": "3760:2:3" + }, + { + "nodeType": "YulBlock", + "src": "3822:223:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3837:38:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3861:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3872:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3857:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3857:17:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3851:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "3851:24:3" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3841:6:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3922:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3931:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3934:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3924:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3924:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3924:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3894:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3902:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3891:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "3891:30:3" + }, + "nodeType": "YulIf", + "src": "3888:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "3952:83:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4007:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4018:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4003:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4003:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4027:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "3962:40:3" + }, + "nodeType": "YulFunctionCall", + "src": "3962:73:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3952:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3720:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3731:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3743:6:3", + "type": "" + } + ], + "src": "3664:388:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4135:207:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4181:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4190:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4193:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4183:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4183:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4183:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4156:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4165:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4152:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4152:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4177:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4148:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4148:32:3" + }, + "nodeType": "YulIf", + "src": "4145:2:3" + }, + { + "nodeType": "YulBlock", + "src": "4207:128:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4222:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4236:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4226:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4251:74:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4297:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4308:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4293:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4293:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4317:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nodeType": "YulIdentifier", + "src": "4261:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "4261:64:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4251:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4105:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4116:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4128:6:3", + "type": "" + } + ], + "src": "4058:284:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4407:50:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4424:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4444:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "4429:14:3" + }, + "nodeType": "YulFunctionCall", + "src": "4429:21:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4417:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4417:34:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4417:34:3" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4395:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4402:3:3", + "type": "" + } + ], + "src": "4348:109:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4528:53:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4545:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4568:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "4550:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "4550:24:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4538:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4538:37:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4538:37:3" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4516:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4523:3:3", + "type": "" + } + ], + "src": "4463:118:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4670:74:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4687:3:3" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4730:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "4712:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "4712:24:3" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nodeType": "YulIdentifier", + "src": "4692:19:3" + }, + "nodeType": "YulFunctionCall", + "src": "4692:45:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4680:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4680:58:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4680:58:3" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4658:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4665:3:3", + "type": "" + } + ], + "src": "4587:157:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4840:270:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4850:52:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4896:5:3" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nodeType": "YulIdentifier", + "src": "4864:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "4864:38:3" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4854:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4911:77:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4976:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4981:6:3" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "4918:57:3" + }, + "nodeType": "YulFunctionCall", + "src": "4918:70:3" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4911:3:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5023:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5030:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5019:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "5019:16:3" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5037:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5042:6:3" + } + ], + "functionName": { + "name": "copy_memory_to_memory", + "nodeType": "YulIdentifier", + "src": "4997:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "4997:52:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4997:52:3" + }, + { + "nodeType": "YulAssignment", + "src": "5058:46:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5069:3:3" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5096:6:3" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "5074:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "5074:29:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5065:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "5065:39:3" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5058:3:3" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4821:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4828:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "4836:3:3", + "type": "" + } + ], + "src": "4750:360:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5197:82:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5214:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5266:5:3" + } + ], + "functionName": { + "name": "convert_t_contract$_ITellor_$1275_to_t_address", + "nodeType": "YulIdentifier", + "src": "5219:46:3" + }, + "nodeType": "YulFunctionCall", + "src": "5219:53:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5207:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5207:66:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5207:66:3" + } + ] + }, + "name": "abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5185:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5192:3:3", + "type": "" + } + ], + "src": "5116:163:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5435:151:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5452:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5573:5:3" + } + ], + "functionName": { + "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", + "nodeType": "YulIdentifier", + "src": "5457:115:3" + }, + "nodeType": "YulFunctionCall", + "src": "5457:122:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5445:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5445:135:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5445:135:3" + } + ] + }, + "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5423:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5430:3:3", + "type": "" + } + ], + "src": "5285:301:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5657:53:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5674:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5697:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "5679:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "5679:24:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5667:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5667:37:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5667:37:3" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5645:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5652:3:3", + "type": "" + } + ], + "src": "5592:118:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5799:74:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5816:3:3" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5859:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "5841:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "5841:24:3" + } + ], + "functionName": { + "name": "leftAlign_t_uint256", + "nodeType": "YulIdentifier", + "src": "5821:19:3" + }, + "nodeType": "YulFunctionCall", + "src": "5821:45:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5809:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5809:58:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5809:58:3" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5787:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5794:3:3", + "type": "" + } + ], + "src": "5716:157:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6023:253:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6096:6:3" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6105:3:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nodeType": "YulIdentifier", + "src": "6034:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "6034:75:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6034:75:3" + }, + { + "nodeType": "YulAssignment", + "src": "6118:19:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6129:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6134:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6125:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6125:12:3" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6118:3:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6209:6:3" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6218:3:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nodeType": "YulIdentifier", + "src": "6147:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "6147:75:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6147:75:3" + }, + { + "nodeType": "YulAssignment", + "src": "6231:19:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6242:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6247:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6238:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6238:12:3" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6231:3:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6260:10:3", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6267:3:3" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "6260:3:3" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5994:3:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6000:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6008:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "6019:3:3", + "type": "" + } + ], + "src": "5879:397:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6374:118:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6384:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6396:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6407:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6392:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6392:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6384:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6458:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6471:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6482:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6467:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6467:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "6420:37:3" + }, + "nodeType": "YulFunctionCall", + "src": "6420:65:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6420:65:3" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6346:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6358:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6369:4:3", + "type": "" + } + ], + "src": "6282:210:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6664:351:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6674:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6686:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6697:2:3", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6682:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6682:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6674:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6748:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6761:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6772:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6757:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6757:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "6710:37:3" + }, + "nodeType": "YulFunctionCall", + "src": "6710:65:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6710:65:3" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6796:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6807:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6792:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6792:18:3" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6816:4:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6822:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6812:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6812:20:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6785:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "6785:48:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6785:48:3" + }, + { + "nodeType": "YulAssignment", + "src": "6842:84:3", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6912:6:3" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6921:4:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "6850:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "6850:76:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6842:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "6980:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6993:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7004:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6989:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6989:18:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "6936:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "6936:72:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6936:72:3" + } + ] + }, + "name": "abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6620:9:3", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6632:6:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6640:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6648:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6659:4:3", + "type": "" + } + ], + "src": "6498:517:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7141:200:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7151:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7163:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7174:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7159:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7159:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7151:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7225:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7238:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7249:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7234:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7234:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "7187:37:3" + }, + "nodeType": "YulFunctionCall", + "src": "7187:65:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7187:65:3" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7306:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7319:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7330:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7315:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7315:18:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "7262:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7262:72:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7262:72:3" + } + ] + }, + "name": "abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7105:9:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "7117:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7125:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7136:4:3", + "type": "" + } + ], + "src": "7021:320:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7445:124:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7455:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7467:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7478:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7463:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7463:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7455:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7535:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7548:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7559:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7544:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7544:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "7491:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7491:71:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7491:71:3" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7417:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7429:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7440:4:3", + "type": "" + } + ], + "src": "7347:222:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7701:206:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7711:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7723:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7734:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7719:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7719:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7711:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7791:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7804:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7815:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7800:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7800:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "7747:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7747:71:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7747:71:3" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7872:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7885:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7896:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7881:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7881:18:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "7828:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7828:72:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7828:72:3" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7665:9:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "7677:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7685:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7696:4:3", + "type": "" + } + ], + "src": "7575:332:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8029:193:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8039:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8051:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8062:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8047:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8047:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8039:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8086:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8097:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8082:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8082:17:3" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8105:4:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8111:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8101:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8101:20:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8075:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "8075:47:3" + }, + "nodeType": "YulExpressionStatement", + "src": "8075:47:3" + }, + { + "nodeType": "YulAssignment", + "src": "8131:84:3", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8201:6:3" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8210:4:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "8139:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "8139:76:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8131:4:3" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8001:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8013:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8024:4:3", + "type": "" + } + ], + "src": "7913:309:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8342:140:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8352:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8364:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8375:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8360:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8360:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8352:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8448:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8461:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8472:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8457:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8457:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack", + "nodeType": "YulIdentifier", + "src": "8388:59:3" + }, + "nodeType": "YulFunctionCall", + "src": "8388:87:3" + }, + "nodeType": "YulExpressionStatement", + "src": "8388:87:3" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_ITellor_$1275__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8314:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8326:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8337:4:3", + "type": "" + } + ], + "src": "8228:254:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8671:209:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8681:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8693:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8704:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8689:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8689:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8681:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8846:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8859:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8870:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8855:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8855:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "8717:128:3" + }, + "nodeType": "YulFunctionCall", + "src": "8717:156:3" + }, + "nodeType": "YulExpressionStatement", + "src": "8717:156:3" + } + ] + }, + "name": "abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8643:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8655:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8666:4:3", + "type": "" + } + ], + "src": "8488:392:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8984:124:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8994:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9006:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9017:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9002:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9002:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8994:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9074:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9087:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9098:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9083:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9083:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "9030:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "9030:71:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9030:71:3" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8956:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8968:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8979:4:3", + "type": "" + } + ], + "src": "8886:222:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9155:88:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9165:30:3", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nodeType": "YulIdentifier", + "src": "9175:18:3" + }, + "nodeType": "YulFunctionCall", + "src": "9175:20:3" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "9165:6:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "9224:6:3" + }, + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9232:4:3" + } + ], + "functionName": { + "name": "finalize_allocation", + "nodeType": "YulIdentifier", + "src": "9204:19:3" + }, + "nodeType": "YulFunctionCall", + "src": "9204:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9204:33:3" + } + ] + }, + "name": "allocate_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "9139:4:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "9148:6:3", + "type": "" + } + ], + "src": "9114:129:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9289:35:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9299:19:3", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9315:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9309:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "9309:9:3" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "9299:6:3" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "9282:6:3", + "type": "" + } + ], + "src": "9249:75:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9412:229:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9517:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "9519:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "9519:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9519:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9489:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9497:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9486:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "9486:30:3" + }, + "nodeType": "YulIf", + "src": "9483:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "9549:25:3", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9561:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9569:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "9557:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9557:17:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9549:4:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9611:23:3", + "value": { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9623:4:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9629:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9619:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9619:15:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9611:4:3" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9396:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "9407:4:3", + "type": "" + } + ], + "src": "9330:311:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9713:241:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9818:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "9820:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "9820:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9820:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9790:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9798:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9787:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "9787:30:3" + }, + "nodeType": "YulIf", + "src": "9784:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "9850:37:3", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9880:6:3" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "9858:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "9858:29:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9850:4:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9924:23:3", + "value": { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9936:4:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9942:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9932:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9932:15:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9924:4:3" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9697:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "9708:4:3", + "type": "" + } + ], + "src": "9647:307:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10018:40:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10029:22:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "10045:5:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10039:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "10039:12:3" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10029:6:3" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10001:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "10011:6:3", + "type": "" + } + ], + "src": "9960:98:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10159:73:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10176:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10181:6:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10169:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "10169:19:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10169:19:3" + }, + { + "nodeType": "YulAssignment", + "src": "10197:29:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10216:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10221:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10212:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10212:14:3" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "10197:11:3" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "10131:3:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "10136:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "10147:11:3", + "type": "" + } + ], + "src": "10064:168:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10282:261:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10292:25:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10315:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10297:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10297:20:3" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10292:1:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10326:25:3", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10349:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10331:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10331:20:3" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10326:1:3" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10489:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "10491:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "10491:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10491:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10410:1:3" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10417:66:3", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10485:1:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10413:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10413:74:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10407:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "10407:81:3" + }, + "nodeType": "YulIf", + "src": "10404:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "10521:16:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10532:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10535:1:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10528:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10528:9:3" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "10521:3:3" + } + ] + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "10269:1:3", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "10272:1:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "10278:3:3", + "type": "" + } + ], + "src": "10238:305:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10591:143:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10601:25:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10624:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10606:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10606:20:3" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10601:1:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10635:25:3", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10658:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10640:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10640:20:3" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10635:1:3" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10682:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x12", + "nodeType": "YulIdentifier", + "src": "10684:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "10684:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10684:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10679:1:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10672:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "10672:9:3" + }, + "nodeType": "YulIf", + "src": "10669:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "10714:14:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10723:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10726:1:3" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "10719:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10719:9:3" + }, + "variableNames": [ + { + "name": "r", + "nodeType": "YulIdentifier", + "src": "10714:1:3" + } + ] + } + ] + }, + "name": "checked_div_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "10580:1:3", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "10583:1:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "r", + "nodeType": "YulTypedName", + "src": "10589:1:3", + "type": "" + } + ], + "src": "10549:185:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10785:146:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10795:25:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10818:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10800:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10800:20:3" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10795:1:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10829:25:3", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10852:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10834:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10834:20:3" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10829:1:3" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10876:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "10878:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "10878:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10878:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10870:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10873:1:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10867:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "10867:8:3" + }, + "nodeType": "YulIf", + "src": "10864:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "10908:17:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10920:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10923:1:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10916:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10916:9:3" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "10908:4:3" + } + ] + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "10771:1:3", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "10774:1:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "10780:4:3", + "type": "" + } + ], + "src": "10740:191:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10982:51:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10992:35:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11021:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "11003:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "11003:24:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "10992:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10964:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "10974:7:3", + "type": "" + } + ], + "src": "10937:96:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11081:48:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11091:32:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11116:5:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "11109:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "11109:13:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "11102:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "11102:21:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11091:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11063:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11073:7:3", + "type": "" + } + ], + "src": "11039:90:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11180:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11190:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11201:5:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11190:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11162:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11172:7:3", + "type": "" + } + ], + "src": "11135:77:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11348:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11358:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11369:5:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11358:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11330:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11340:7:3", + "type": "" + } + ], + "src": "11218:162:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11431:81:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11441:65:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11456:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11463:42:3", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "11452:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "11452:54:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11441:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11413:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11423:7:3", + "type": "" + } + ], + "src": "11386:126:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11563:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11573:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11584:5:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11573:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11545:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11555:7:3", + "type": "" + } + ], + "src": "11518:77:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11677:82:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11687:66:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11747:5:3" + } + ], + "functionName": { + "name": "convert_t_contract$_ITellor_$1275_to_t_uint160", + "nodeType": "YulIdentifier", + "src": "11700:46:3" + }, + "nodeType": "YulFunctionCall", + "src": "11700:53:3" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "11687:9:3" + } + ] + } + ] + }, + "name": "convert_t_contract$_ITellor_$1275_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11657:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "11667:9:3", + "type": "" + } + ], + "src": "11601:158:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11841:53:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11851:37:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11882:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "11864:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "11864:24:3" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "11851:9:3" + } + ] + } + ] + }, + "name": "convert_t_contract$_ITellor_$1275_to_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11821:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "11831:9:3", + "type": "" + } + ], + "src": "11765:129:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12045:152:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12055:136:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12184:5:3" + } + ], + "functionName": { + "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", + "nodeType": "YulIdentifier", + "src": "12081:102:3" + }, + "nodeType": "YulFunctionCall", + "src": "12081:109:3" + } + ], + "functionName": { + "name": "shift_left_0", + "nodeType": "YulIdentifier", + "src": "12068:12:3" + }, + "nodeType": "YulFunctionCall", + "src": "12068:123:3" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "12055:9:3" + } + ] + } + ] + }, + "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12025:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "12035:9:3", + "type": "" + } + ], + "src": "11900:297:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12252:258:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12262:10:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12271:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "12266:1:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12331:63:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12356:3:3" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12361:1:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12352:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12352:11:3" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "12375:3:3" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12380:1:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12371:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12371:11:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12365:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "12365:18:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12345:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "12345:39:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12345:39:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12292:1:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12295:6:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12289:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12289:13:3" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "12303:19:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12305:15:3", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12314:1:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12317:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12310:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12310:10:3" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12305:1:3" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "12285:3:3", + "statements": [] + }, + "src": "12281:113:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12428:76:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12478:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12483:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12474:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12474:16:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12492:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12467:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "12467:27:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12467:27:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12409:1:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12412:6:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12406:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12406:13:3" + }, + "nodeType": "YulIf", + "src": "12403:2:3" + } + ] + }, + "name": "copy_memory_to_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "12234:3:3", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "12239:3:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "12244:6:3", + "type": "" + } + ], + "src": "12203:307:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12559:238:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12569:58:3", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12591:6:3" + }, + { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "12621:4:3" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "12599:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "12599:27:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12587:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12587:40:3" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "12573:10:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12738:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "12740:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "12740:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12740:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12681:10:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12693:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12678:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12678:34:3" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12717:10:3" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12729:6:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12714:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12714:22:3" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "12675:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12675:62:3" + }, + "nodeType": "YulIf", + "src": "12672:2:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12776:2:3", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12780:10:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12769:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "12769:22:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12769:22:3" + } + ] + }, + "name": "finalize_allocation", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "12545:6:3", + "type": "" + }, + { + "name": "size", + "nodeType": "YulTypedName", + "src": "12553:4:3", + "type": "" + } + ], + "src": "12516:281:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12850:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12860:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12871:5:3" + }, + "variableNames": [ + { + "name": "aligned", + "nodeType": "YulIdentifier", + "src": "12860:7:3" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12832:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nodeType": "YulTypedName", + "src": "12842:7:3", + "type": "" + } + ], + "src": "12803:79:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12935:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12945:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12956:5:3" + }, + "variableNames": [ + { + "name": "aligned", + "nodeType": "YulIdentifier", + "src": "12945:7:3" + } + ] + } + ] + }, + "name": "leftAlign_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12917:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nodeType": "YulTypedName", + "src": "12927:7:3", + "type": "" + } + ], + "src": "12888:79:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13001:152:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13018:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13021:77:3", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13011:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13011:88:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13011:88:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13115:1:3", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13118:4:3", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13108:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13108:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13108:15:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13139:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13142:4:3", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13132:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13132:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13132:15:3" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "12973:180:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13187:152:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13204:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13207:77:3", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13197:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13197:88:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13197:88:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13301:1:3", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13304:4:3", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13294:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13294:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13294:15:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13325:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13328:4:3", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13318:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13318:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13318:15:3" + } + ] + }, + "name": "panic_error_0x12", + "nodeType": "YulFunctionDefinition", + "src": "13159:180:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13373:152:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13390:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13393:77:3", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13383:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13383:88:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13383:88:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13487:1:3", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13490:4:3", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13480:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13480:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13480:15:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13511:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13514:4:3", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13504:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13504:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13504:15:3" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "13345:180:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13579:54:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13589:38:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13607:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13614:2:3", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13603:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13603:14:3" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13623:2:3", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "13619:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13619:7:3" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13599:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13599:28:3" + }, + "variableNames": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "13589:6:3" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13562:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nodeType": "YulTypedName", + "src": "13572:6:3", + "type": "" + } + ], + "src": "13531:102:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13680:51:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13690:34:3", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13715:1:3", + "type": "", + "value": "0" + }, + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13718:5:3" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "13711:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13711:13:3" + }, + "variableNames": [ + { + "name": "newValue", + "nodeType": "YulIdentifier", + "src": "13690:8:3" + } + ] + } + ] + }, + "name": "shift_left_0", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13661:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nodeType": "YulTypedName", + "src": "13671:8:3", + "type": "" + } + ], + "src": "13639:92:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13780:79:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "13837:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13846:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13849:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13839:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13839:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13839:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13803:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13828:5:3" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "13810:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "13810:24:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13800:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "13800:35:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13793:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13793:43:3" + }, + "nodeType": "YulIf", + "src": "13790:2:3" + } + ] + }, + "name": "validator_revert_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13773:5:3", + "type": "" + } + ], + "src": "13737:122:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13908:79:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "13965:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13974:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13977:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13967:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13967:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13967:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13931:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13956:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "13938:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "13938:24:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13928:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "13928:35:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13921:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13921:43:3" + }, + "nodeType": "YulIf", + "src": "13918:2:3" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13901:5:3", + "type": "" + } + ], + "src": "13865:122:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14036:79:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "14093:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14102:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14105:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14095:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "14095:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "14095:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14059:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14084:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "14066:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "14066:24:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "14056:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "14056:35:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "14049:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "14049:43:3" + }, + "nodeType": "YulIf", + "src": "14046:2:3" + } + ] + }, + "name": "validator_revert_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "14029:5:3", + "type": "" + } + ], + "src": "13993:122:3" + } + ] + }, + "contents": "{\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n mstore(array, length) dst := add(array, 0x20)\n let src := offset\n if gt(add(src, mul(length, 0x20)), end) { revert(0, 0) }\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementPos := src\n mstore(dst, abi_decode_t_uint256_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n src := add(src, 0x20)\n }\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_memory_to_memory(src, dst, length)\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr_fromMemory(add(offset, 0x20), length, end)\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_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ITellor_$1275_to_t_address(value))\n }\n\n function abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value1, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n }\n\n function abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_contract$_ITellor_$1275__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\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 allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_contract$_ITellor_$1275_to_t_address(value) -> converted {\n converted := convert_t_contract$_ITellor_$1275_to_t_uint160(value)\n }\n\n function convert_t_contract$_ITellor_$1275_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(value)\n }\n\n function convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(value) -> converted {\n converted := shift_left_0(cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value))\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function shift_left_0(value) -> newValue {\n newValue :=\n\n shl(0, value)\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", + "id": 3, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220d4412748f7775579c589884c6cce22a64f473d4f91837ee0192e9566e99894fe64736f6c63430008030033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD4 COINBASE 0x27 0x48 0xF7 PUSH24 0x5579C589884C6CCE22A64F473D4F91837EE0192E9566E998 SWAP5 INVALID PUSH5 0x736F6C6343 STOP ADDMOD SUB STOP CALLER ", + "sourceMap": "247:8373:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;274:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3013:2155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6929:947;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5390:484;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1919:657;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;891:619;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;8113:505;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6108:528;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;274:21;;;;;;;;;;;;:::o;3013:2155::-;3127:11;3140:14;3170;3187:35;3213:8;3187:25;:35::i;:::-;3170:52;;3246:1;3237:6;:10;3233:1902;;;3263:14;3291:13;3307:1;3291:17;;3322:11;3345:1;3336:6;:10;;;;:::i;:::-;3322:24;;3360:13;3461:46;3491:8;3501:5;3461:29;:46::i;:::-;3453:54;;3534:10;3525:5;:19;3521:42;;3554:5;3561:1;3546:17;;;;;;;;;;;3521:42;3585:44;3615:8;3625:3;3585:29;:44::i;:::-;3577:52;;3655:10;3647:5;:18;3643:42;;;3675:4;3681:3;3667:18;;;;;;;;;;;3643:42;3775:1350;3782:4;3775:1350;;;3839:5;3835:1;3831;3822:5;3816:3;:11;;;;:::i;:::-;3815:17;;;;:::i;:::-;:21;;;;:::i;:::-;:29;;;;:::i;:::-;3806:38;;3870:47;3900:8;3910:6;3870:29;:47::i;:::-;3862:55;;3947:10;3939:5;:18;3935:1052;;;4028:17;4048:121;4103:8;4146:1;4137:6;:10;;;;:::i;:::-;4048:29;:121::i;:::-;4028:141;;4208:10;4195:9;:23;4191:281;;4297:4;4303:6;4289:21;;;;;;;;;;;;4191:281;4448:1;4439:6;:10;;;;:::i;:::-;4431:18;;3935:1052;;;;4518:17;4538:121;4593:8;4636:1;4627:6;:10;;;;:::i;:::-;4538:29;:121::i;:::-;4518:141;;4697:10;4685:9;:22;4681:288;;;4791:4;4806:1;4797:6;:10;;;;:::i;:::-;4783:25;;;;;;;;;;;;4681:288;4945:1;4936:6;:10;;;;:::i;:::-;4930:16;;3935:1052;;3775:1350;;;3233:1902;;;;;5152:5;5159:1;5144:17;;;;;3013:2155;;;;;;:::o;6929:947::-;7033:4;7053:19;7158:42;7140:61;;:6;;;;;;;;;;:61;;;:138;;;;7235:42;7217:61;;:6;;;;;;;;;;:61;;;7140:138;7123:559;;;7303:18;7349:42;7303:102;;7458:10;:20;;;7500:66;7458:126;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7419:179;;7123:559;;;;7651:6;;;;;;;;;;:17;;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7629:42;;7123:559;7868:1;7710:11;:42;;;7801:8;7811:10;7784:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7774:49;;;;;;7710:131;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:155;:159;7691:178;;;6929:947;;;;:::o;5390:484::-;5488:7;5587:42;5569:61;;:6;;;;;;;;;;:61;;;:138;;;;5664:42;5646:61;;:6;;;;;;;;;;:61;;;5569:138;5552:316;;;5739:6;;;;;;;;;;:28;;;5768:8;5739:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5732:45;;;;5552:316;5815:6;;;;;;;;;;:32;;;5848:8;5815:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5808:49;;5390:484;;;;:::o;1919:657::-;2038:16;2068:19;2101:27;2154:11;2167:14;2185:77;2220:8;2242:10;2185:21;:77::i;:::-;2153:109;;;;2277:6;2272:41;;2293:5;2300:9;;;;;;;;;;;;2311:1;2285:28;;;;;;;;;;2272:41;2323:13;2339:47;2369:8;2379:6;2339:29;:47::i;:::-;2323:63;;2405:29;2418:8;2428:5;2405:12;:29::i;:::-;2396:38;;2479:9;;;;;;;;;;;;2469:20;;;;;;2458:6;2448:17;;;;;;:41;2444:87;;2511:4;2517:6;2525:5;2503:28;;;;;;;;;;;2444:87;2549:5;2556:9;;;;;;;;;;;;2567:1;2541:28;;;;;;;;;1919:657;;;;;;:::o;891:619::-;992:16;1022:19;1055:27;1107:14;1124:35;1150:8;1124:25;:35::i;:::-;1107:52;;1184:1;1174:6;:11;1170:70;;;1209:5;1216:9;;;;;;;;;;;;1227:1;1201:28;;;;;;;;;1170:70;1249:13;1265:51;1295:8;1314:1;1305:6;:10;;;;:::i;:::-;1265:29;:51::i;:::-;1249:67;;1335:29;1348:8;1358:5;1335:12;:29::i;:::-;1326:38;;1409:9;;;;;;;;;;;;1399:20;;;;;;1388:6;1378:17;;;;;;:41;1374:87;;1441:4;1447:6;1455:5;1433:28;;;;;;;;;;1374:87;1479:5;1486:9;;;;;;;;;;;;1497:5;1471:32;;;;;;;;891:619;;;;;;:::o;8113:505::-;8218:12;8322:42;8304:61;;:6;;;;;;;;;;:61;;;:138;;;;8399:42;8381:61;;:6;;;;;;;;;;:61;;;8304:138;8287:325;;;8474:6;;;;;;;;;;:26;;;8501:8;8511:10;8474:48;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8467:55;;;;8287:325;8560:6;;;;;;;;;;:19;;;8580:8;8590:10;8560:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8553:48;;8113:505;;;;;:::o;6108:528::-;6226:7;6325:42;6307:61;;:6;;;;;;;;;;:61;;;:138;;;;6402:42;6384:61;;:6;;;;;;;;;;:61;;;6307:138;6290:340;;;6477:6;;;;;;;;;;:32;;;6510:8;6520:6;6477:50;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6470:57;;;;6290:340;6565:6;;;;;;;;;;:36;;;6602:8;6612:6;6565:54;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6558:61;;6108:528;;;;;:::o;24:645:3:-;;156:81;172:64;229:6;172:64;:::i;:::-;156:81;:::i;:::-;147:90;;257:5;285:6;278:5;271:21;311:4;304:5;300:16;293:23;;336:6;386:3;378:4;370:6;366:17;361:3;357:27;354:36;351:2;;;403:1;400;393:12;351:2;431:1;416:247;441:6;438:1;435:13;416:247;;;508:3;536:48;580:3;568:10;536:48;:::i;:::-;531:3;524:61;614:4;609:3;605:14;598:21;;648:4;643:3;639:14;632:21;;476:187;463:1;460;456:9;451:14;;416:247;;;420:14;137:532;;;;;;;:::o;675:352::-;;788:65;804:48;845:6;804:48;:::i;:::-;788:65;:::i;:::-;779:74;;876:6;869:5;862:21;914:4;907:5;903:16;952:3;943:6;938:3;934:16;931:25;928:2;;;969:1;966;959:12;928:2;982:39;1014:6;1009:3;1004;982:39;:::i;:::-;769:258;;;;;;:::o;1033:143::-;;1121:6;1115:13;1106:22;;1137:33;1164:5;1137:33;:::i;:::-;1096:80;;;;:::o;1199:318::-;;1330:3;1323:4;1315:6;1311:17;1307:27;1297:2;;1348:1;1345;1338:12;1297:2;1381:6;1375:13;1406:105;1507:3;1499:6;1492:4;1484:6;1480:17;1406:105;:::i;:::-;1397:114;;1287:230;;;;;:::o;1523:139::-;;1607:6;1594:20;1585:29;;1623:33;1650:5;1623:33;:::i;:::-;1575:87;;;;:::o;1681:286::-;;1796:3;1789:4;1781:6;1777:17;1773:27;1763:2;;1814:1;1811;1804:12;1763:2;1847:6;1841:13;1872:89;1957:3;1949:6;1942:4;1934:6;1930:17;1872:89;:::i;:::-;1863:98;;1753:214;;;;;:::o;1973:139::-;;2057:6;2044:20;2035:29;;2073:33;2100:5;2073:33;:::i;:::-;2025:87;;;;:::o;2118:143::-;;2206:6;2200:13;2191:22;;2222:33;2249:5;2222:33;:::i;:::-;2181:80;;;;:::o;2267:284::-;;2386:2;2374:9;2365:7;2361:23;2357:32;2354:2;;;2402:1;2399;2392:12;2354:2;2445:1;2470:64;2526:7;2517:6;2506:9;2502:22;2470:64;:::i;:::-;2460:74;;2416:128;2344:207;;;;:::o;2557:420::-;;2701:2;2689:9;2680:7;2676:23;2672:32;2669:2;;;2717:1;2714;2707:12;2669:2;2781:1;2770:9;2766:17;2760:24;2811:18;2803:6;2800:30;2797:2;;;2843:1;2840;2833:12;2797:2;2871:89;2952:7;2943:6;2932:9;2928:22;2871:89;:::i;:::-;2861:99;;2731:239;2659:318;;;;:::o;2983:262::-;;3091:2;3079:9;3070:7;3066:23;3062:32;3059:2;;;3107:1;3104;3097:12;3059:2;3150:1;3175:53;3220:7;3211:6;3200:9;3196:22;3175:53;:::i;:::-;3165:63;;3121:117;3049:196;;;;:::o;3251:407::-;;;3376:2;3364:9;3355:7;3351:23;3347:32;3344:2;;;3392:1;3389;3382:12;3344:2;3435:1;3460:53;3505:7;3496:6;3485:9;3481:22;3460:53;:::i;:::-;3450:63;;3406:117;3562:2;3588:53;3633:7;3624:6;3613:9;3609:22;3588:53;:::i;:::-;3578:63;;3533:118;3334:324;;;;;:::o;3664:388::-;;3792:2;3780:9;3771:7;3767:23;3763:32;3760:2;;;3808:1;3805;3798:12;3760:2;3872:1;3861:9;3857:17;3851:24;3902:18;3894:6;3891:30;3888:2;;;3934:1;3931;3924:12;3888:2;3962:73;4027:7;4018:6;4007:9;4003:22;3962:73;:::i;:::-;3952:83;;3822:223;3750:302;;;;:::o;4058:284::-;;4177:2;4165:9;4156:7;4152:23;4148:32;4145:2;;;4193:1;4190;4183:12;4145:2;4236:1;4261:64;4317:7;4308:6;4297:9;4293:22;4261:64;:::i;:::-;4251:74;;4207:128;4135:207;;;;:::o;4348:109::-;4429:21;4444:5;4429:21;:::i;:::-;4424:3;4417:34;4407:50;;:::o;4463:118::-;4550:24;4568:5;4550:24;:::i;:::-;4545:3;4538:37;4528:53;;:::o;4587:157::-;4692:45;4712:24;4730:5;4712:24;:::i;:::-;4692:45;:::i;:::-;4687:3;4680:58;4670:74;;:::o;4750:360::-;;4864:38;4896:5;4864:38;:::i;:::-;4918:70;4981:6;4976:3;4918:70;:::i;:::-;4911:77;;4997:52;5042:6;5037:3;5030:4;5023:5;5019:16;4997:52;:::i;:::-;5074:29;5096:6;5074:29;:::i;:::-;5069:3;5065:39;5058:46;;4840:270;;;;;:::o;5116:163::-;5219:53;5266:5;5219:53;:::i;:::-;5214:3;5207:66;5197:82;;:::o;5285:301::-;5457:122;5573:5;5457:122;:::i;:::-;5452:3;5445:135;5435:151;;:::o;5592:118::-;5679:24;5697:5;5679:24;:::i;:::-;5674:3;5667:37;5657:53;;:::o;5716:157::-;5821:45;5841:24;5859:5;5841:24;:::i;:::-;5821:45;:::i;:::-;5816:3;5809:58;5799:74;;:::o;5879:397::-;;6034:75;6105:3;6096:6;6034:75;:::i;:::-;6134:2;6129:3;6125:12;6118:19;;6147:75;6218:3;6209:6;6147:75;:::i;:::-;6247:2;6242:3;6238:12;6231:19;;6267:3;6260:10;;6023:253;;;;;:::o;6282:210::-;;6407:2;6396:9;6392:18;6384:26;;6420:65;6482:1;6471:9;6467:17;6458:6;6420:65;:::i;:::-;6374:118;;;;:::o;6498:517::-;;6697:2;6686:9;6682:18;6674:26;;6710:65;6772:1;6761:9;6757:17;6748:6;6710:65;:::i;:::-;6822:9;6816:4;6812:20;6807:2;6796:9;6792:18;6785:48;6850:76;6921:4;6912:6;6850:76;:::i;:::-;6842:84;;6936:72;7004:2;6993:9;6989:18;6980:6;6936:72;:::i;:::-;6664:351;;;;;;:::o;7021:320::-;;7174:2;7163:9;7159:18;7151:26;;7187:65;7249:1;7238:9;7234:17;7225:6;7187:65;:::i;:::-;7262:72;7330:2;7319:9;7315:18;7306:6;7262:72;:::i;:::-;7141:200;;;;;:::o;7347:222::-;;7478:2;7467:9;7463:18;7455:26;;7491:71;7559:1;7548:9;7544:17;7535:6;7491:71;:::i;:::-;7445:124;;;;:::o;7575:332::-;;7734:2;7723:9;7719:18;7711:26;;7747:71;7815:1;7804:9;7800:17;7791:6;7747:71;:::i;:::-;7828:72;7896:2;7885:9;7881:18;7872:6;7828:72;:::i;:::-;7701:206;;;;;:::o;7913:309::-;;8062:2;8051:9;8047:18;8039:26;;8111:9;8105:4;8101:20;8097:1;8086:9;8082:17;8075:47;8139:76;8210:4;8201:6;8139:76;:::i;:::-;8131:84;;8029:193;;;;:::o;8228:254::-;;8375:2;8364:9;8360:18;8352:26;;8388:87;8472:1;8461:9;8457:17;8448:6;8388:87;:::i;:::-;8342:140;;;;:::o;8488:392::-;;8704:2;8693:9;8689:18;8681:26;;8717:156;8870:1;8859:9;8855:17;8846:6;8717:156;:::i;:::-;8671:209;;;;:::o;8886:222::-;;9017:2;9006:9;9002:18;8994:26;;9030:71;9098:1;9087:9;9083:17;9074:6;9030:71;:::i;:::-;8984:124;;;;:::o;9114:129::-;;9175:20;;:::i;:::-;9165:30;;9204:33;9232:4;9224:6;9204:33;:::i;:::-;9155:88;;;:::o;9249:75::-;;9315:2;9309:9;9299:19;;9289:35;:::o;9330:311::-;;9497:18;9489:6;9486:30;9483:2;;;9519:18;;:::i;:::-;9483:2;9569:4;9561:6;9557:17;9549:25;;9629:4;9623;9619:15;9611:23;;9412:229;;;:::o;9647:307::-;;9798:18;9790:6;9787:30;9784:2;;;9820:18;;:::i;:::-;9784:2;9858:29;9880:6;9858:29;:::i;:::-;9850:37;;9942:4;9936;9932:15;9924:23;;9713:241;;;:::o;9960:98::-;;10045:5;10039:12;10029:22;;10018:40;;;:::o;10064:168::-;;10181:6;10176:3;10169:19;10221:4;10216:3;10212:14;10197:29;;10159:73;;;;:::o;10238:305::-;;10297:20;10315:1;10297:20;:::i;:::-;10292:25;;10331:20;10349:1;10331:20;:::i;:::-;10326:25;;10485:1;10417:66;10413:74;10410:1;10407:81;10404:2;;;10491:18;;:::i;:::-;10404:2;10535:1;10532;10528:9;10521:16;;10282:261;;;;:::o;10549:185::-;;10606:20;10624:1;10606:20;:::i;:::-;10601:25;;10640:20;10658:1;10640:20;:::i;:::-;10635:25;;10679:1;10669:2;;10684:18;;:::i;:::-;10669:2;10726:1;10723;10719:9;10714:14;;10591:143;;;;:::o;10740:191::-;;10800:20;10818:1;10800:20;:::i;:::-;10795:25;;10834:20;10852:1;10834:20;:::i;:::-;10829:25;;10873:1;10870;10867:8;10864:2;;;10878:18;;:::i;:::-;10864:2;10923:1;10920;10916:9;10908:17;;10785:146;;;;:::o;10937:96::-;;11003:24;11021:5;11003:24;:::i;:::-;10992:35;;10982:51;;;:::o;11039:90::-;;11116:5;11109:13;11102:21;11091:32;;11081:48;;;:::o;11135:77::-;;11201:5;11190:16;;11180:32;;;:::o;11218:162::-;;11369:5;11358:16;;11348:32;;;:::o;11386:126::-;;11463:42;11456:5;11452:54;11441:65;;11431:81;;;:::o;11518:77::-;;11584:5;11573:16;;11563:32;;;:::o;11601:158::-;;11700:53;11747:5;11700:53;:::i;:::-;11687:66;;11677:82;;;:::o;11765:129::-;;11864:24;11882:5;11864:24;:::i;:::-;11851:37;;11841:53;;;:::o;11900:297::-;;12068:123;12081:109;12184:5;12081:109;:::i;:::-;12068:123;:::i;:::-;12055:136;;12045:152;;;:::o;12203:307::-;12271:1;12281:113;12295:6;12292:1;12289:13;12281:113;;;12380:1;12375:3;12371:11;12365:18;12361:1;12356:3;12352:11;12345:39;12317:2;12314:1;12310:10;12305:15;;12281:113;;;12412:6;12409:1;12406:13;12403:2;;;12492:1;12483:6;12478:3;12474:16;12467:27;12403:2;12252:258;;;;:::o;12516:281::-;12599:27;12621:4;12599:27;:::i;:::-;12591:6;12587:40;12729:6;12717:10;12714:22;12693:18;12681:10;12678:34;12675:62;12672:2;;;12740:18;;:::i;:::-;12672:2;12780:10;12776:2;12769:22;12559:238;;;:::o;12803:79::-;;12871:5;12860:16;;12850:32;;;:::o;12888:79::-;;12956:5;12945:16;;12935:32;;;:::o;12973:180::-;13021:77;13018:1;13011:88;13118:4;13115:1;13108:15;13142:4;13139:1;13132:15;13159:180;13207:77;13204:1;13197:88;13304:4;13301:1;13294:15;13328:4;13325:1;13318:15;13345:180;13393:77;13390:1;13383:88;13490:4;13487:1;13480:15;13514:4;13511:1;13504:15;13531:102;;13623:2;13619:7;13614:2;13607:5;13603:14;13599:28;13589:38;;13579:54;;;:::o;13639:92::-;;13718:5;13715:1;13711:13;13690:34;;13680:51;;;:::o;13737:122::-;13810:24;13828:5;13810:24;:::i;:::-;13803:5;13800:35;13790:2;;13849:1;13846;13839:12;13790:2;13780:79;:::o;13865:122::-;13938:24;13956:5;13938:24;:::i;:::-;13931:5;13928:35;13918:2;;13977:1;13974;13967:12;13918:2;13908:79;:::o;13993:122::-;14066:24;14084:5;14066:24;:::i;:::-;14059:5;14056:35;14046:2;;14105:1;14102;14095:12;14046:2;14036:79;:::o" + }, + "methodIdentifiers": { + "getCurrentValue(bytes32)": "adf1639d", + "getDataBefore(bytes32,uint256)": "a792765f", + "getIndexForDataBefore(bytes32,uint256)": "29449085", + "getNewValueCountbyQueryId(bytes32)": "77b03e0d", + "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", + "isInDispute(bytes32,uint256)": "44e87f91", + "retrieveData(bytes32,uint256)": "c5958af9", + "tellor()": "1959ad5b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_tellor\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentValue\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getIndexForDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_found\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"isInDispute\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tellor\",\"outputs\":[{\"internalType\":\"contract ITellor\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"the constructor sets the tellor address in storage\",\"params\":{\"_tellor\":\"is the TellorMaster address\"}},\"getCurrentValue(bytes32)\":{\"details\":\"Allows the user to get the latest value for the queryId specified\",\"params\":{\"_queryId\":\"is the id to look up the value for\"},\"returns\":{\"_ifRetrieve\":\"bool true if non-zero value successfully retrieved\",\"_timestampRetrieved\":\"the retrieved value's timestamp\",\"_value\":\"the value retrieved\"}},\"getDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves the latest value for the queryId before the specified timestamp\",\"params\":{\"_queryId\":\"is the queryId to look up the value for\",\"_timestamp\":\"before which to search for latest value\"},\"returns\":{\"_ifRetrieve\":\"bool true if able to retrieve a non-zero value\",\"_timestampRetrieved\":\"the value's timestamp\",\"_value\":\"the value retrieved\"}},\"getIndexForDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves latest array index of data before the specified timestamp for the queryId\",\"params\":{\"_queryId\":\"is the queryId to look up the index for\",\"_timestamp\":\"is the timestamp before which to search for the latest index\"},\"returns\":{\"_found\":\"whether the index was found\",\"_index\":\"the latest index found before the specified timestamp\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for the queryId\",\"params\":{\"_queryId\":\"the id to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"isInDispute(bytes32,uint256)\":{\"details\":\"Determines whether a value with a given queryId and timestamp has been disputed\",\"params\":{\"_queryId\":\"is the value id to look up\",\"_timestamp\":\"is the timestamp of the value to look up\"},\"returns\":{\"_0\":\"bool true if queryId/timestamp is under dispute\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieve value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for query/timestamp submitted\"}}},\"title\":\"UserContract This contract allows for easy integration with the Tellor System by helping smart contracts to read data from Tellor\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/UsingTellor.sol\":\"UsingTellor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/UsingTellor.sol\":{\"keccak256\":\"0x92f27d93725f4bbda8434d00f4eaceacf9b590e6a668607cf832d2490d095b9c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c229768f6909ab94b7b3a2dfa1980977d89513b84b02ac170851913459b4808f\",\"dweb:/ipfs/QmdHnNLQbDJML5ENDMybf7UNSkgpiKegWkoDP47syz2xdj\"]},\"contracts/interface/ITellor.sol\":{\"keccak256\":\"0xa5a51f40da64e5049b95fe53a77bfcf751d87107cca29906a1c8bd35b28e9001\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e7290418621dacc2fe85c4715d6e627b60d3ecef6c424e1e8c6ee66e3b27969\",\"dweb:/ipfs/QmNmEdmUGpTq6hGwQd7pMhAg42pV5ypaFvhLxCrVPB8wRE\"]}},\"version\":1}" + } + }, + "contracts/interface/ITellor.sol": { + "ITellor": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addStakingRewards", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "addresses", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "allowedToTrade", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "approveAndTransferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "balanceOfAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "beginDispute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "burnTips", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "buyTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_addy", + "type": "address" + } + ], + "name": "changeAddressVar", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newController", + "type": "address" + } + ], + "name": "changeControllerContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newDeity", + "type": "address" + } + ], + "name": "changeDeity", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernance", + "type": "address" + } + ], + "name": "changeGovernanceContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newOracle", + "type": "address" + } + ], + "name": "changeOracleContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newOwner", + "type": "address" + } + ], + "name": "changeOwner", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_newReportingLock", + "type": "uint256" + } + ], + "name": "changeReportingLock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_reporter", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_status", + "type": "uint256" + } + ], + "name": "changeStakingStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_tContract", + "type": "address" + } + ], + "name": "changeTellorContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_newTimeBasedReward", + "type": "uint256" + } + ], + "name": "changeTimeBasedReward", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newTreasury", + "type": "address" + } + ], + "name": "changeTreasuryContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_target", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "changeUint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_delegate", + "type": "address" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "delegateOfAt", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "depositStake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "didVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + } + ], + "name": "executeVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_data", + "type": "bytes32" + } + ], + "name": "getAddressVars", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + } + ], + "name": "getAllDisputeVars", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256[9]", + "name": "", + "type": "uint256[9]" + }, + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getBlockNumberByTimestamp", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getCurrentReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getCurrentValue", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_holder", + "type": "address" + } + ], + "name": "getDelegateInfo", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_hash", + "type": "bytes32" + } + ], + "name": "getDisputeIdByDisputeHash", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + } + ], + "name": "getDisputeInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_data", + "type": "bytes32" + } + ], + "name": "getDisputeUintVars", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_requestId", + "type": "uint256" + } + ], + "name": "getLastNewValueById", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNewCurrentVariables", + "outputs": [ + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + }, + { + "internalType": "uint256[5]", + "name": "_r", + "type": "uint256[5]" + }, + { + "internalType": "uint256", + "name": "_d", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_t", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getNewValueCountbyQueryId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_requestId", + "type": "uint256" + } + ], + "name": "getNewValueCountbyRequestId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getOpenDisputesOnId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "name": "getReportTimestampByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getReporterByTimestamp", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_reporter", + "type": "address" + } + ], + "name": "getReporterLastTimestamp", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getReportingLock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_reporter", + "type": "address" + } + ], + "name": "getReportsSubmittedByAddress", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_staker", + "type": "address" + } + ], + "name": "getStakerInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getTimeBasedReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getTimeOfLastNewValue", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getTimestampCountById", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getTimestampIndexByTimestamp", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "name": "getTimestampbyQueryIdandIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_requestId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "name": "getTimestampbyRequestIDandIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getTipsById", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + } + ], + "name": "getTipsByUser", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_investor", + "type": "address" + } + ], + "name": "getTreasuryAccount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getTreasuryCount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_id", + "type": "uint256" + } + ], + "name": "getTreasuryDetails", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + } + ], + "name": "getTreasuryFundsByUser", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_id", + "type": "uint256" + } + ], + "name": "getTreasuryOwners", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_data", + "type": "bytes32" + } + ], + "name": "getUintVar", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getValueByTimestamp", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getVoteCount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + } + ], + "name": "getVoteInfo", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "uint256[9]", + "name": "", + "type": "uint256[9]" + }, + { + "internalType": "bool[2]", + "name": "", + "type": "bool[2]" + }, + { + "internalType": "enum ITellor.VoteResult", + "name": "", + "type": "uint8" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + }, + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + }, + { + "internalType": "address[2]", + "name": "", + "type": "address[2]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_hash", + "type": "bytes32" + } + ], + "name": "getVoteRounds", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governance", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "init", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + } + ], + "name": "isApprovedGovernanceContract", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "_func", + "type": "bytes4" + } + ], + "name": "isFunctionApproved", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addy", + "type": "address" + } + ], + "name": "isMigrated", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_maxAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_rate", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_duration", + "type": "uint256" + } + ], + "name": "issueTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "killContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "migrate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_destination", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "migrateFor", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_reciever", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_investor", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_id", + "type": "uint256" + } + ], + "name": "payTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "_function", + "type": "bytes4" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "proposeVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "removeValue", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reportingLock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "requestStakingWithdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_tokenHolder", + "type": "address" + } + ], + "name": "rescue51PercentAttack", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "rescueBrokenDataReporting", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "rescueFailedUpdate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_requestId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "retrieveData", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "retrieveData", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "_func", + "type": "bytes4" + }, + { + "internalType": "bool", + "name": "_val", + "type": "bool" + } + ], + "name": "setApprovedFunction", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_reporter", + "type": "address" + }, + { + "internalType": "address", + "name": "_disputer", + "type": "address" + } + ], + "name": "slashReporter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "_value", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_nonce", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_queryData", + "type": "bytes" + } + ], + "name": "submitValue", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + } + ], + "name": "tallyVotes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tip", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_queryData", + "type": "bytes" + } + ], + "name": "tipQuery", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "uints", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "updateMinDisputeFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verify", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "_supports", + "type": "bool" + }, + { + "internalType": "bool", + "name": "_invalidQuery", + "type": "bool" + } + ], + "name": "vote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_addys", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "_disputeId", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "_supports", + "type": "bool" + }, + { + "internalType": "bool", + "name": "_invalidQuery", + "type": "bool" + } + ], + "name": "voteFor", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_investor", + "type": "address" + } + ], + "name": "wasPaid", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "withdrawStake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "addStakingRewards(uint256)": "d9c51cd4", + "addresses(bytes32)": "699f200f", + "allowance(address,address)": "dd62ed3e", + "allowedToTrade(address,uint256)": "999cf26c", + "approve(address,uint256)": "095ea7b3", + "approveAndTransferFrom(address,address,uint256)": "288c9c9d", + "balanceOf(address)": "70a08231", + "balanceOfAt(address,uint256)": "4ee2cd7e", + "beginDispute(bytes32,uint256)": "1f379acc", + "burn(uint256)": "42966c68", + "burnTips()": "df0a6eb7", + "buyTreasury(uint256,uint256)": "6a64b815", + "changeAddressVar(bytes32,address)": "515ec907", + "changeControllerContract(address)": "3c46a185", + "changeDeity(address)": "47abd7f1", + "changeGovernanceContract(address)": "e8ce51d7", + "changeOracleContract(address)": "1cbd3151", + "changeOwner(address)": "a6f9dae1", + "changeReportingLock(uint256)": "5d183cfa", + "changeStakingStatus(address,uint256)": "a1332c5c", + "changeTellorContract(address)": "ae0a8279", + "changeTimeBasedReward(uint256)": "6d53585f", + "changeTreasuryContract(address)": "bd87e0c9", + "changeUint(bytes32,uint256)": "740358e6", + "decimals()": "313ce567", + "delegate(address)": "5c19a95c", + "delegateOfAt(address,uint256)": "b3427a2b", + "depositStake()": "0d2d76a2", + "didVote(uint256,address)": "a7c438bc", + "executeVote(uint256)": "f98a4eca", + "getAddressVars(bytes32)": "133bee5e", + "getAllDisputeVars(uint256)": "af0b1327", + "getBlockNumberByTimestamp(bytes32,uint256)": "935408d0", + "getCurrentReward(bytes32)": "a1e588a5", + "getCurrentValue(bytes32)": "adf1639d", + "getDelegateInfo(address)": "10c67e1c", + "getDisputeIdByDisputeHash(bytes32)": "da379941", + "getDisputeInfo(uint256)": "6169c308", + "getDisputeUintVars(uint256,bytes32)": "7f6fd5d9", + "getLastNewValueById(uint256)": "3180f8df", + "getNewCurrentVariables()": "4049f198", + "getNewValueCountbyQueryId(bytes32)": "77b03e0d", + "getNewValueCountbyRequestId(uint256)": "46eee1c4", + "getOpenDisputesOnId(bytes32)": "0e1596ef", + "getReportTimestampByIndex(bytes32,uint256)": "7c37b8b4", + "getReporterByTimestamp(bytes32,uint256)": "e07c5486", + "getReporterLastTimestamp(address)": "50005b83", + "getReportingLock()": "460c33a2", + "getReportsSubmittedByAddress(address)": "3878293e", + "getStakerInfo(address)": "733bdef0", + "getTimeBasedReward()": "14d66b9a", + "getTimeOfLastNewValue()": "c0f95d52", + "getTimestampCountById(bytes32)": "35e72432", + "getTimestampIndexByTimestamp(bytes32,uint256)": "9d9b16ed", + "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", + "getTimestampbyRequestIDandIndex(uint256,uint256)": "77fbb663", + "getTipsById(bytes32)": "ef4c262d", + "getTipsByUser(address)": "b736ec36", + "getTreasuryAccount(uint256,address)": "ae23fae1", + "getTreasuryCount()": "8e0918b5", + "getTreasuryDetails(uint256)": "73342a47", + "getTreasuryFundsByUser(address)": "770d458f", + "getTreasuryOwners(uint256)": "1683ca53", + "getUintVar(bytes32)": "612c8f7f", + "getValueByTimestamp(bytes32,uint256)": "0b2d2b0d", + "getVoteCount()": "e7b3387c", + "getVoteInfo(uint256)": "8d824273", + "getVoteRounds(bytes32)": "248638e5", + "governance()": "5aa6e675", + "init()": "e1c7392a", + "isApprovedGovernanceContract(address)": "fd3171b2", + "isFunctionApproved(bytes4)": "2d2506a9", + "isMigrated(address)": "58421ed2", + "issueTreasury(uint256,uint256,uint256)": "6274885f", + "killContract()": "1c02708d", + "migrate()": "8fd3ab80", + "migrateFor(address,uint256)": "0b477573", + "mint(address,uint256)": "40c10f19", + "name()": "06fdde03", + "payTreasury(address,uint256)": "ef362980", + "proposeVote(address,bytes4,bytes,uint256)": "0b5e95c3", + "removeValue(bytes32,uint256)": "5b5edcfc", + "reportingLock()": "3321fc41", + "requestStakingWithdraw()": "28449c3a", + "rescue51PercentAttack(address)": "335f8dd4", + "rescueBrokenDataReporting()": "7c564a6a", + "rescueFailedUpdate()": "32701403", + "retrieveData(bytes32,uint256)": "c5958af9", + "retrieveData(uint256,uint256)": "93fa4915", + "setApprovedFunction(bytes4,bool)": "e48d4b3b", + "slashReporter(address,address)": "4dfc2a34", + "submitValue(bytes32,bytes,uint256,bytes)": "5eaa9ced", + "symbol()": "95d89b41", + "tallyVotes(uint256)": "4d318b0e", + "tipQuery(bytes32,uint256,bytes)": "ef0234ad", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd", + "uints(bytes32)": "b59e14d4", + "updateMinDisputeFee()": "90e5b235", + "verify()": "fc735e99", + "vote(uint256,bool,bool)": "df133bca", + "voteFor(address[],uint256,bool,bool)": "e5d91314", + "wasPaid(uint256,address)": "4d90d705", + "withdrawStake()": "bed9d861" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"addStakingRewards\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"addresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"allowedToTrade\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"approveAndTransferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"balanceOfAt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"beginDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"burnTips\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"buyTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_id\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_addy\",\"type\":\"address\"}],\"name\":\"changeAddressVar\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newController\",\"type\":\"address\"}],\"name\":\"changeControllerContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newDeity\",\"type\":\"address\"}],\"name\":\"changeDeity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newGovernance\",\"type\":\"address\"}],\"name\":\"changeGovernanceContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOracle\",\"type\":\"address\"}],\"name\":\"changeOracleContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"changeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newReportingLock\",\"type\":\"uint256\"}],\"name\":\"changeReportingLock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_status\",\"type\":\"uint256\"}],\"name\":\"changeStakingStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_tContract\",\"type\":\"address\"}],\"name\":\"changeTellorContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newTimeBasedReward\",\"type\":\"uint256\"}],\"name\":\"changeTimeBasedReward\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newTreasury\",\"type\":\"address\"}],\"name\":\"changeTreasuryContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_target\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"changeUint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_delegate\",\"type\":\"address\"}],\"name\":\"delegate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"delegateOfAt\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"depositStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"didVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"executeVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_data\",\"type\":\"bytes32\"}],\"name\":\"getAddressVars\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"getAllDisputeVars\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256[9]\",\"name\":\"\",\"type\":\"uint256[9]\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getBlockNumberByTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentValue\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_holder\",\"type\":\"address\"}],\"name\":\"getDelegateInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getDisputeIdByDisputeHash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"getDisputeInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_data\",\"type\":\"bytes32\"}],\"name\":\"getDisputeUintVars\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"}],\"name\":\"getLastNewValueById\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNewCurrentVariables\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_c\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[5]\",\"name\":\"_r\",\"type\":\"uint256[5]\"},{\"internalType\":\"uint256\",\"name\":\"_d\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_t\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"}],\"name\":\"getNewValueCountbyRequestId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getOpenDisputesOnId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getReportTimestampByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getReporterByTimestamp\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"getReporterLastTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getReportingLock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"getReportsSubmittedByAddress\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_staker\",\"type\":\"address\"}],\"name\":\"getStakerInfo\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTimeBasedReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTimeOfLastNewValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getTimestampCountById\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getTimestampIndexByTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyRequestIDandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getTipsById\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getTipsByUser\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"}],\"name\":\"getTreasuryAccount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTreasuryCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"getTreasuryDetails\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getTreasuryFundsByUser\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"getTreasuryOwners\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_data\",\"type\":\"bytes32\"}],\"name\":\"getUintVar\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getValueByTimestamp\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getVoteCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"getVoteInfo\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[9]\",\"name\":\"\",\"type\":\"uint256[9]\"},{\"internalType\":\"bool[2]\",\"name\":\"\",\"type\":\"bool[2]\"},{\"internalType\":\"enum ITellor.VoteResult\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"},{\"internalType\":\"address[2]\",\"name\":\"\",\"type\":\"address[2]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"getVoteRounds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"name\":\"isApprovedGovernanceContract\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_func\",\"type\":\"bytes4\"}],\"name\":\"isFunctionApproved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_addy\",\"type\":\"address\"}],\"name\":\"isMigrated\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_rate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_duration\",\"type\":\"uint256\"}],\"name\":\"issueTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"killContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"migrate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_destination\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"migrateFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reciever\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"payTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"_function\",\"type\":\"bytes4\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"proposeVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"removeValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"reportingLock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"requestStakingWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_tokenHolder\",\"type\":\"address\"}],\"name\":\"rescue51PercentAttack\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rescueBrokenDataReporting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rescueFailedUpdate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_func\",\"type\":\"bytes4\"},{\"internalType\":\"bool\",\"name\":\"_val\",\"type\":\"bool\"}],\"name\":\"setApprovedFunction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_disputer\",\"type\":\"address\"}],\"name\":\"slashReporter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"submitValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"}],\"name\":\"tallyVotes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_tip\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_queryData\",\"type\":\"bytes\"}],\"name\":\"tipQuery\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"uints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateMinDisputeFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verify\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_supports\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"_invalidQuery\",\"type\":\"bool\"}],\"name\":\"vote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_addys\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_disputeId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_supports\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"_invalidQuery\",\"type\":\"bool\"}],\"name\":\"voteFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"}],\"name\":\"wasPaid\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interface/ITellor.sol\":\"ITellor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/interface/ITellor.sol\":{\"keccak256\":\"0xa5a51f40da64e5049b95fe53a77bfcf751d87107cca29906a1c8bd35b28e9001\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e7290418621dacc2fe85c4715d6e627b60d3ecef6c424e1e8c6ee66e3b27969\",\"dweb:/ipfs/QmNmEdmUGpTq6hGwQd7pMhAg42pV5ypaFvhLxCrVPB8wRE\"]}},\"version\":1}" + } + }, + "contracts/mocks/BenchUsingTellor.sol": { + "BenchUsingTellor": { + "abi": [ + { + "inputs": [ + { + "internalType": "address payable", + "name": "_tellor", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getCurrentValue", + "outputs": [ + { + "internalType": "bool", + "name": "_ifRetrieve", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "_value", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_timestampRetrieved", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getDataBefore", + "outputs": [ + { + "internalType": "bool", + "name": "_ifRetrieve", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "_value", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_timestampRetrieved", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "getIndexForDataBefore", + "outputs": [ + { + "internalType": "bool", + "name": "_found", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + } + ], + "name": "getNewValueCountbyQueryId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_index", + "type": "uint256" + } + ], + "name": "getTimestampbyQueryIdandIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "isInDispute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_queryId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_timestamp", + "type": "uint256" + } + ], + "name": "retrieveData", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "tellor", + "outputs": [ + { + "internalType": "contract ITellor", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:861:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "78:88:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "88:22:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "103:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "97:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "97:13:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "88:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "154:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_address_payable", + "nodeType": "YulIdentifier", + "src": "119:34:3" + }, + "nodeType": "YulFunctionCall", + "src": "119:41:3" + }, + "nodeType": "YulExpressionStatement", + "src": "119:41:3" + } + ] + }, + "name": "abi_decode_t_address_payable_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "56:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "64:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "72:5:3", + "type": "" + } + ], + "src": "7:159:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "257:215:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "303:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "312:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "315:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "305:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "305:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "305:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "278:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "287:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "274:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "274:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "299:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "270:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "270:32:3" + }, + "nodeType": "YulIf", + "src": "267:2:3" + }, + { + "nodeType": "YulBlock", + "src": "329:136:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "344:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "358:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "348:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "373:82:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "427:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "438:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "423:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "423:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "447:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_address_payable_fromMemory", + "nodeType": "YulIdentifier", + "src": "383:39:3" + }, + "nodeType": "YulFunctionCall", + "src": "383:72:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "373:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_payable_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "227:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "238:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "250:6:3", + "type": "" + } + ], + "src": "172:300:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "531:51:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "541:35:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "570:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "552:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "552:24:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "541:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_address_payable", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "513:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "523:7:3", + "type": "" + } + ], + "src": "478:104:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "633:81:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "643:65:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "658:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "665:42:3", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "654:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "654:54:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "643:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "615:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "625:7:3", + "type": "" + } + ], + "src": "588:126:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "771:87:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "836:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "845:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "848:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "838:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "838:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "838:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "794:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "827:5:3" + } + ], + "functionName": { + "name": "cleanup_t_address_payable", + "nodeType": "YulIdentifier", + "src": "801:25:3" + }, + "nodeType": "YulFunctionCall", + "src": "801:32:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "791:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "791:43:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "784:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "784:51:3" + }, + "nodeType": "YulIf", + "src": "781:2:3" + } + ] + }, + "name": "validator_revert_t_address_payable", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "764:5:3", + "type": "" + } + ], + "src": "720:138:3" + } + ] + }, + "contents": "{\n\n function abi_decode_t_address_payable_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_payable_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n}\n", + "id": 3, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60806040523480156200001157600080fd5b506040516200181438038062001814833981810160405281019062000037919062000097565b80806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000111565b6000815190506200009181620000f7565b92915050565b600060208284031215620000aa57600080fd5b6000620000ba8482850162000080565b91505092915050565b6000620000d082620000d7565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010281620000c3565b81146200010e57600080fd5b50565b6116f380620001216000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220241723a222553481bfba2cccf132f9ea89e9b4540020779f9524b186875faaed64736f6c63430008030033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x1814 CODESIZE SUB DUP1 PUSH3 0x1814 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x37 SWAP2 SWAP1 PUSH3 0x97 JUMP JUMPDEST DUP1 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP PUSH3 0x111 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x91 DUP2 PUSH3 0xF7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xAA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH3 0xBA DUP5 DUP3 DUP6 ADD PUSH3 0x80 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xD0 DUP3 PUSH3 0xD7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0x102 DUP2 PUSH3 0xC3 JUMP JUMPDEST DUP2 EQ PUSH3 0x10E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16F3 DUP1 PUSH3 0x121 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x24 OR 0x23 LOG2 0x22 SSTORE CALLVALUE DUP2 0xBF 0xBA 0x2C 0xCC CALL ORIGIN 0xF9 0xEA DUP10 0xE9 0xB4 SLOAD STOP KECCAK256 PUSH24 0x9F9524B186875FAAED64736F6C6343000803003300000000 ", + "sourceMap": "186:109:2:-:0;;;233:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;282:7;515::0;498:6;;:25;;;;;;;;;;;;;;;;;;451:79;233:60:2;186:109;;7:159:3;;103:6;97:13;88:22;;119:41;154:5;119:41;:::i;:::-;78:88;;;;:::o;172:300::-;;299:2;287:9;278:7;274:23;270:32;267:2;;;315:1;312;305:12;267:2;358:1;383:72;447:7;438:6;427:9;423:22;383:72;:::i;:::-;373:82;;329:136;257:215;;;;:::o;478:104::-;;552:24;570:5;552:24;:::i;:::-;541:35;;531:51;;;:::o;588:126::-;;665:42;658:5;654:54;643:65;;633:81;;;:::o;720:138::-;801:32;827:5;801:32;:::i;:::-;794:5;791:43;781:2;;848:1;845;838:12;781:2;771:87;:::o;186:109:2:-;;;;;;;" + }, + "deployedBytecode": { + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:14118:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "137:532:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "147:90:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "229:6:3" + } + ], + "functionName": { + "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "172:56:3" + }, + "nodeType": "YulFunctionCall", + "src": "172:64:3" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "156:15:3" + }, + "nodeType": "YulFunctionCall", + "src": "156:81:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "147:5:3" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "246:16:3", + "value": { + "name": "array", + "nodeType": "YulIdentifier", + "src": "257:5:3" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "250:3:3", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "278:5:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "285:6:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "271:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "271:21:3" + }, + "nodeType": "YulExpressionStatement", + "src": "271:21:3" + }, + { + "nodeType": "YulAssignment", + "src": "293:23:3", + "value": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "304:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "311:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "300:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "300:16:3" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "293:3:3" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "325:17:3", + "value": { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "336:6:3" + }, + "variables": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "329:3:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "391:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "400:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "403:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "393:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "393:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "393:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "361:3:3" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "370:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "378:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "366:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "366:17:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "357:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "357:27:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "386:3:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "354:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "354:36:3" + }, + "nodeType": "YulIf", + "src": "351:2:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "476:187:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "490:21:3", + "value": { + "name": "src", + "nodeType": "YulIdentifier", + "src": "508:3:3" + }, + "variables": [ + { + "name": "elementPos", + "nodeType": "YulTypedName", + "src": "494:10:3", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "531:3:3" + }, + { + "arguments": [ + { + "name": "elementPos", + "nodeType": "YulIdentifier", + "src": "568:10:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "580:3:3" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nodeType": "YulIdentifier", + "src": "536:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "536:48:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "524:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "524:61:3" + }, + "nodeType": "YulExpressionStatement", + "src": "524:61:3" + }, + { + "nodeType": "YulAssignment", + "src": "598:21:3", + "value": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "609:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "614:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "605:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "605:14:3" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "598:3:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "632:21:3", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "643:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "648:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "639:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "639:14:3" + }, + "variableNames": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "632:3:3" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "438:1:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "441:6:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "435:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "435:13:3" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "449:18:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "451:14:3", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "460:1:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "463:1:3", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "456:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "456:9:3" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "451:1:3" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "420:14:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "422:10:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "431:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "426:1:3", + "type": "" + } + ] + } + ] + }, + "src": "416:247:3" + } + ] + }, + "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "107:6:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "115:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "123:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "131:5:3", + "type": "" + } + ], + "src": "24:645:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "769:258:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "779:74:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "845:6:3" + } + ], + "functionName": { + "name": "array_allocation_size_t_bytes_memory_ptr", + "nodeType": "YulIdentifier", + "src": "804:40:3" + }, + "nodeType": "YulFunctionCall", + "src": "804:48:3" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "788:15:3" + }, + "nodeType": "YulFunctionCall", + "src": "788:65:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "779:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "869:5:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "876:6:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "862:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "862:21:3" + }, + "nodeType": "YulExpressionStatement", + "src": "862:21:3" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "892:27:3", + "value": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "907:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "914:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "903:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "903:16:3" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "896:3:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "957:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "966:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "969:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "959:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "959:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "959:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "938:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "943:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "934:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "934:16:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "952:3:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "931:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "931:25:3" + }, + "nodeType": "YulIf", + "src": "928:2:3" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "1004:3:3" + }, + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "1009:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1014:6:3" + } + ], + "functionName": { + "name": "copy_memory_to_memory", + "nodeType": "YulIdentifier", + "src": "982:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "982:39:3" + }, + "nodeType": "YulExpressionStatement", + "src": "982:39:3" + } + ] + }, + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "742:3:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "747:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "755:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "763:5:3", + "type": "" + } + ], + "src": "675:352:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1096:80:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1106:22:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1121:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1115:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "1115:13:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1106:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1164:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nodeType": "YulIdentifier", + "src": "1137:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "1137:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1137:33:3" + } + ] + }, + "name": "abi_decode_t_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1074:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1082:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1090:5:3", + "type": "" + } + ], + "src": "1033:143:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1287:230:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1336:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1345:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1348:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1338:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1338:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1338:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1315:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1323:4:3", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1311:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1311:17:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1330:3:3" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1307:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1307:27:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1300:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1300:35:3" + }, + "nodeType": "YulIf", + "src": "1297:2:3" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1361:27:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1381:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1375:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "1375:13:3" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1365:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1397:114:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1484:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1492:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1480:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1480:17:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1499:6:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1507:3:3" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "1406:73:3" + }, + "nodeType": "YulFunctionCall", + "src": "1406:105:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "1397:5:3" + } + ] + } + ] + }, + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1265:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1273:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "1281:5:3", + "type": "" + } + ], + "src": "1199:318:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1575:87:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1585:29:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1607:6:3" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1594:12:3" + }, + "nodeType": "YulFunctionCall", + "src": "1594:20:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1585:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1650:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nodeType": "YulIdentifier", + "src": "1623:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "1623:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1623:33:3" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1553:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1561:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1569:5:3", + "type": "" + } + ], + "src": "1523:139:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1753:214:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1802:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1811:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1814:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1804:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1804:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "1804:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1781:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1789:4:3", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1777:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1777:17:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1796:3:3" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1773:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1773:27:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1766:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "1766:35:3" + }, + "nodeType": "YulIf", + "src": "1763:2:3" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1827:27:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1847:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1841:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "1841:13:3" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1831:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1863:98:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1934:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1942:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1930:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "1930:17:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1949:6:3" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1957:3:3" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "1872:57:3" + }, + "nodeType": "YulFunctionCall", + "src": "1872:89:3" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "1863:5:3" + } + ] + } + ] + }, + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1731:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1739:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "1747:5:3", + "type": "" + } + ], + "src": "1681:286:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2025:87:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2035:29:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2057:6:3" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2044:12:3" + }, + "nodeType": "YulFunctionCall", + "src": "2044:20:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2035:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2100:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nodeType": "YulIdentifier", + "src": "2073:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "2073:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2073:33:3" + } + ] + }, + "name": "abi_decode_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2003:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2011:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2019:5:3", + "type": "" + } + ], + "src": "1973:139:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2181:80:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2191:22:3", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2206:6:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2200:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "2200:13:3" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2191:5:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2249:5:3" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nodeType": "YulIdentifier", + "src": "2222:26:3" + }, + "nodeType": "YulFunctionCall", + "src": "2222:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2222:33:3" + } + ] + }, + "name": "abi_decode_t_uint256_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2159:6:3", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2167:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2175:5:3", + "type": "" + } + ], + "src": "2118:143:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2344:207:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2390:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2399:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2402:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2392:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "2392:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2392:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2365:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2374:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2361:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2361:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2386:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2357:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2357:32:3" + }, + "nodeType": "YulIf", + "src": "2354:2:3" + }, + { + "nodeType": "YulBlock", + "src": "2416:128:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2431:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2445:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2435:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2460:74:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2506:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2517:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2502:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2502:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2526:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "2470:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "2470:64:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2460:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2314:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2325:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2337:6:3", + "type": "" + } + ], + "src": "2267:284:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2659:318:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2705:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2714:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2717:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2707:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "2707:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2707:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2680:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2689:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2676:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2676:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2701:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2672:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2672:32:3" + }, + "nodeType": "YulIf", + "src": "2669:2:3" + }, + { + "nodeType": "YulBlock", + "src": "2731:239:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2746:38:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2770:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2781:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2766:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2766:17:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2760:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "2760:24:3" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2750:6:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2831:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2840:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2843:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2833:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "2833:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "2833:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2803:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2811:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2800:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "2800:30:3" + }, + "nodeType": "YulIf", + "src": "2797:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "2861:99:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2932:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2943:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2928:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "2928:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2952:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "2871:56:3" + }, + "nodeType": "YulFunctionCall", + "src": "2871:89:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2861:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2629:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2640:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2652:6:3", + "type": "" + } + ], + "src": "2557:420:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3049:196:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3095:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3104:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3107:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3097:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3097:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3097:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3070:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3079:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3066:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3066:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3091:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3062:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3062:32:3" + }, + "nodeType": "YulIf", + "src": "3059:2:3" + }, + { + "nodeType": "YulBlock", + "src": "3121:117:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3136:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3150:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3140:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3165:63:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3200:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3211:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3196:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3196:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3220:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "3175:20:3" + }, + "nodeType": "YulFunctionCall", + "src": "3175:53:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3165:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3019:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3030:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3042:6:3", + "type": "" + } + ], + "src": "2983:262:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3334:324:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3380:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3389:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3392:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3382:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3382:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3382:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3355:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3364:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3351:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3351:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3376:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3347:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3347:32:3" + }, + "nodeType": "YulIf", + "src": "3344:2:3" + }, + { + "nodeType": "YulBlock", + "src": "3406:117:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3421:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3435:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3425:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3450:63:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3485:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3496:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3481:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3481:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3505:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "3460:20:3" + }, + "nodeType": "YulFunctionCall", + "src": "3460:53:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3450:6:3" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3533:118:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3548:16:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3562:2:3", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3552:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3578:63:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3613:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3624:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3609:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3609:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3633:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "3588:20:3" + }, + "nodeType": "YulFunctionCall", + "src": "3588:53:3" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3578:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3296:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3307:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3319:6:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3327:6:3", + "type": "" + } + ], + "src": "3251:407:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3750:302:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3796:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3805:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3808:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3798:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3798:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3798:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3771:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3780:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3767:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3767:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3792:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3763:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3763:32:3" + }, + "nodeType": "YulIf", + "src": "3760:2:3" + }, + { + "nodeType": "YulBlock", + "src": "3822:223:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3837:38:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3861:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3872:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3857:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "3857:17:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3851:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "3851:24:3" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3841:6:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3922:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3931:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3934:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3924:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "3924:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "3924:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3894:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3902:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3891:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "3891:30:3" + }, + "nodeType": "YulIf", + "src": "3888:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "3952:83:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4007:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4018:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4003:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4003:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4027:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulIdentifier", + "src": "3962:40:3" + }, + "nodeType": "YulFunctionCall", + "src": "3962:73:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3952:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3720:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3731:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3743:6:3", + "type": "" + } + ], + "src": "3664:388:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4135:207:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4181:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4190:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4193:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4183:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4183:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4183:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4156:7:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4165:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4152:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4152:23:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4177:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4148:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4148:32:3" + }, + "nodeType": "YulIf", + "src": "4145:2:3" + }, + { + "nodeType": "YulBlock", + "src": "4207:128:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4222:15:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4236:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4226:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4251:74:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4297:9:3" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4308:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4293:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "4293:22:3" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4317:7:3" + } + ], + "functionName": { + "name": "abi_decode_t_uint256_fromMemory", + "nodeType": "YulIdentifier", + "src": "4261:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "4261:64:3" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4251:6:3" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4105:9:3", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4116:7:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4128:6:3", + "type": "" + } + ], + "src": "4058:284:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4407:50:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4424:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4444:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "4429:14:3" + }, + "nodeType": "YulFunctionCall", + "src": "4429:21:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4417:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4417:34:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4417:34:3" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4395:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4402:3:3", + "type": "" + } + ], + "src": "4348:109:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4528:53:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4545:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4568:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "4550:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "4550:24:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4538:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4538:37:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4538:37:3" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4516:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4523:3:3", + "type": "" + } + ], + "src": "4463:118:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4670:74:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4687:3:3" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4730:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "4712:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "4712:24:3" + } + ], + "functionName": { + "name": "leftAlign_t_bytes32", + "nodeType": "YulIdentifier", + "src": "4692:19:3" + }, + "nodeType": "YulFunctionCall", + "src": "4692:45:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4680:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "4680:58:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4680:58:3" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4658:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4665:3:3", + "type": "" + } + ], + "src": "4587:157:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4840:270:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4850:52:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4896:5:3" + } + ], + "functionName": { + "name": "array_length_t_bytes_memory_ptr", + "nodeType": "YulIdentifier", + "src": "4864:31:3" + }, + "nodeType": "YulFunctionCall", + "src": "4864:38:3" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4854:6:3", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4911:77:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4976:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4981:6:3" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "4918:57:3" + }, + "nodeType": "YulFunctionCall", + "src": "4918:70:3" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4911:3:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5023:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5030:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5019:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "5019:16:3" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5037:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5042:6:3" + } + ], + "functionName": { + "name": "copy_memory_to_memory", + "nodeType": "YulIdentifier", + "src": "4997:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "4997:52:3" + }, + "nodeType": "YulExpressionStatement", + "src": "4997:52:3" + }, + { + "nodeType": "YulAssignment", + "src": "5058:46:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5069:3:3" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5096:6:3" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "5074:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "5074:29:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5065:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "5065:39:3" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5058:3:3" + } + ] + } + ] + }, + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4821:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4828:3:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "4836:3:3", + "type": "" + } + ], + "src": "4750:360:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5197:82:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5214:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5266:5:3" + } + ], + "functionName": { + "name": "convert_t_contract$_ITellor_$1275_to_t_address", + "nodeType": "YulIdentifier", + "src": "5219:46:3" + }, + "nodeType": "YulFunctionCall", + "src": "5219:53:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5207:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5207:66:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5207:66:3" + } + ] + }, + "name": "abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5185:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5192:3:3", + "type": "" + } + ], + "src": "5116:163:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5435:151:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5452:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5573:5:3" + } + ], + "functionName": { + "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", + "nodeType": "YulIdentifier", + "src": "5457:115:3" + }, + "nodeType": "YulFunctionCall", + "src": "5457:122:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5445:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5445:135:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5445:135:3" + } + ] + }, + "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5423:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5430:3:3", + "type": "" + } + ], + "src": "5285:301:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5657:53:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5674:3:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5697:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "5679:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "5679:24:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5667:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5667:37:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5667:37:3" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5645:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5652:3:3", + "type": "" + } + ], + "src": "5592:118:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5799:74:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5816:3:3" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5859:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "5841:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "5841:24:3" + } + ], + "functionName": { + "name": "leftAlign_t_uint256", + "nodeType": "YulIdentifier", + "src": "5821:19:3" + }, + "nodeType": "YulFunctionCall", + "src": "5821:45:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5809:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "5809:58:3" + }, + "nodeType": "YulExpressionStatement", + "src": "5809:58:3" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5787:5:3", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5794:3:3", + "type": "" + } + ], + "src": "5716:157:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6023:253:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6096:6:3" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6105:3:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", + "nodeType": "YulIdentifier", + "src": "6034:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "6034:75:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6034:75:3" + }, + { + "nodeType": "YulAssignment", + "src": "6118:19:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6129:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6134:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6125:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6125:12:3" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6118:3:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6209:6:3" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6218:3:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", + "nodeType": "YulIdentifier", + "src": "6147:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "6147:75:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6147:75:3" + }, + { + "nodeType": "YulAssignment", + "src": "6231:19:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6242:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6247:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6238:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6238:12:3" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6231:3:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6260:10:3", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6267:3:3" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "6260:3:3" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5994:3:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6000:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6008:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "6019:3:3", + "type": "" + } + ], + "src": "5879:397:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6374:118:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6384:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6396:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6407:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6392:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6392:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6384:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6458:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6471:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6482:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6467:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6467:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "6420:37:3" + }, + "nodeType": "YulFunctionCall", + "src": "6420:65:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6420:65:3" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6346:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6358:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6369:4:3", + "type": "" + } + ], + "src": "6282:210:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6664:351:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6674:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6686:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6697:2:3", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6682:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6682:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6674:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6748:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6761:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6772:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6757:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6757:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "6710:37:3" + }, + "nodeType": "YulFunctionCall", + "src": "6710:65:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6710:65:3" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6796:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6807:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6792:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6792:18:3" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6816:4:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6822:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6812:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6812:20:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6785:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "6785:48:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6785:48:3" + }, + { + "nodeType": "YulAssignment", + "src": "6842:84:3", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6912:6:3" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6921:4:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "6850:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "6850:76:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6842:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "6980:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6993:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7004:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6989:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "6989:18:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "6936:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "6936:72:3" + }, + "nodeType": "YulExpressionStatement", + "src": "6936:72:3" + } + ] + }, + "name": "abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6620:9:3", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6632:6:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6640:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6648:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6659:4:3", + "type": "" + } + ], + "src": "6498:517:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7141:200:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7151:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7163:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7174:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7159:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7159:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7151:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7225:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7238:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7249:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7234:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7234:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "7187:37:3" + }, + "nodeType": "YulFunctionCall", + "src": "7187:65:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7187:65:3" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7306:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7319:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7330:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7315:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7315:18:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "7262:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7262:72:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7262:72:3" + } + ] + }, + "name": "abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7105:9:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "7117:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7125:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7136:4:3", + "type": "" + } + ], + "src": "7021:320:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7445:124:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7455:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7467:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7478:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7463:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7463:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7455:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7535:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7548:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7559:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7544:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7544:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "7491:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7491:71:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7491:71:3" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7417:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7429:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7440:4:3", + "type": "" + } + ], + "src": "7347:222:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7701:206:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7711:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7723:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7734:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7719:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7719:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7711:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7791:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7804:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7815:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7800:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7800:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "7747:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7747:71:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7747:71:3" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7872:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7885:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7896:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7881:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "7881:18:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "7828:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "7828:72:3" + }, + "nodeType": "YulExpressionStatement", + "src": "7828:72:3" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7665:9:3", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "7677:6:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7685:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7696:4:3", + "type": "" + } + ], + "src": "7575:332:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8029:193:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8039:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8051:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8062:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8047:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8047:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8039:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8086:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8097:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8082:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8082:17:3" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8105:4:3" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8111:9:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8101:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8101:20:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8075:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "8075:47:3" + }, + "nodeType": "YulExpressionStatement", + "src": "8075:47:3" + }, + { + "nodeType": "YulAssignment", + "src": "8131:84:3", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8201:6:3" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8210:4:3" + } + ], + "functionName": { + "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "8139:61:3" + }, + "nodeType": "YulFunctionCall", + "src": "8139:76:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8131:4:3" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8001:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8013:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8024:4:3", + "type": "" + } + ], + "src": "7913:309:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8342:140:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8352:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8364:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8375:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8360:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8360:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8352:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8448:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8461:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8472:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8457:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8457:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack", + "nodeType": "YulIdentifier", + "src": "8388:59:3" + }, + "nodeType": "YulFunctionCall", + "src": "8388:87:3" + }, + "nodeType": "YulExpressionStatement", + "src": "8388:87:3" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_ITellor_$1275__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8314:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8326:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8337:4:3", + "type": "" + } + ], + "src": "8228:254:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8671:209:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8681:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8693:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8704:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8689:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8689:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8681:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8846:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8859:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8870:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8855:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "8855:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "8717:128:3" + }, + "nodeType": "YulFunctionCall", + "src": "8717:156:3" + }, + "nodeType": "YulExpressionStatement", + "src": "8717:156:3" + } + ] + }, + "name": "abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8643:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8655:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8666:4:3", + "type": "" + } + ], + "src": "8488:392:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8984:124:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8994:26:3", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9006:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9017:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9002:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9002:18:3" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8994:4:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9074:6:3" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9087:9:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9098:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9083:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9083:17:3" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "9030:43:3" + }, + "nodeType": "YulFunctionCall", + "src": "9030:71:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9030:71:3" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8956:9:3", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8968:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8979:4:3", + "type": "" + } + ], + "src": "8886:222:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9155:88:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9165:30:3", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nodeType": "YulIdentifier", + "src": "9175:18:3" + }, + "nodeType": "YulFunctionCall", + "src": "9175:20:3" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "9165:6:3" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "9224:6:3" + }, + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9232:4:3" + } + ], + "functionName": { + "name": "finalize_allocation", + "nodeType": "YulIdentifier", + "src": "9204:19:3" + }, + "nodeType": "YulFunctionCall", + "src": "9204:33:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9204:33:3" + } + ] + }, + "name": "allocate_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "9139:4:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "9148:6:3", + "type": "" + } + ], + "src": "9114:129:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9289:35:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9299:19:3", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9315:2:3", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9309:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "9309:9:3" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "9299:6:3" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "9282:6:3", + "type": "" + } + ], + "src": "9249:75:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9412:229:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9517:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "9519:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "9519:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9519:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9489:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9497:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9486:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "9486:30:3" + }, + "nodeType": "YulIf", + "src": "9483:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "9549:25:3", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9561:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9569:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "9557:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9557:17:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9549:4:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9611:23:3", + "value": { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9623:4:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9629:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9619:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9619:15:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9611:4:3" + } + ] + } + ] + }, + "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9396:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "9407:4:3", + "type": "" + } + ], + "src": "9330:311:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9713:241:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9818:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "9820:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "9820:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "9820:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9790:6:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9798:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9787:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "9787:30:3" + }, + "nodeType": "YulIf", + "src": "9784:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "9850:37:3", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9880:6:3" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "9858:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "9858:29:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9850:4:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9924:23:3", + "value": { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9936:4:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9942:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9932:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "9932:15:3" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "9924:4:3" + } + ] + } + ] + }, + "name": "array_allocation_size_t_bytes_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9697:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "9708:4:3", + "type": "" + } + ], + "src": "9647:307:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10018:40:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10029:22:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "10045:5:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10039:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "10039:12:3" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10029:6:3" + } + ] + } + ] + }, + "name": "array_length_t_bytes_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10001:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "10011:6:3", + "type": "" + } + ], + "src": "9960:98:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10159:73:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10176:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10181:6:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10169:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "10169:19:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10169:19:3" + }, + { + "nodeType": "YulAssignment", + "src": "10197:29:3", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10216:3:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10221:4:3", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10212:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10212:14:3" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "10197:11:3" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "10131:3:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "10136:6:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "10147:11:3", + "type": "" + } + ], + "src": "10064:168:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10282:261:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10292:25:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10315:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10297:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10297:20:3" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10292:1:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10326:25:3", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10349:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10331:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10331:20:3" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10326:1:3" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10489:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "10491:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "10491:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10491:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10410:1:3" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10417:66:3", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10485:1:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10413:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10413:74:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10407:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "10407:81:3" + }, + "nodeType": "YulIf", + "src": "10404:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "10521:16:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10532:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10535:1:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10528:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10528:9:3" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "10521:3:3" + } + ] + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "10269:1:3", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "10272:1:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "10278:3:3", + "type": "" + } + ], + "src": "10238:305:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10591:143:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10601:25:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10624:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10606:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10606:20:3" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10601:1:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10635:25:3", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10658:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10640:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10640:20:3" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10635:1:3" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10682:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x12", + "nodeType": "YulIdentifier", + "src": "10684:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "10684:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10684:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10679:1:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10672:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "10672:9:3" + }, + "nodeType": "YulIf", + "src": "10669:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "10714:14:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10723:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10726:1:3" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "10719:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10719:9:3" + }, + "variableNames": [ + { + "name": "r", + "nodeType": "YulIdentifier", + "src": "10714:1:3" + } + ] + } + ] + }, + "name": "checked_div_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "10580:1:3", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "10583:1:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "r", + "nodeType": "YulTypedName", + "src": "10589:1:3", + "type": "" + } + ], + "src": "10549:185:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10785:146:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10795:25:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10818:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10800:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10800:20:3" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10795:1:3" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10829:25:3", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10852:1:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "10834:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "10834:20:3" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10829:1:3" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10876:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "10878:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "10878:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "10878:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10870:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10873:1:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10867:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "10867:8:3" + }, + "nodeType": "YulIf", + "src": "10864:2:3" + }, + { + "nodeType": "YulAssignment", + "src": "10908:17:3", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "10920:1:3" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "10923:1:3" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10916:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "10916:9:3" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "10908:4:3" + } + ] + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "10771:1:3", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "10774:1:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "10780:4:3", + "type": "" + } + ], + "src": "10740:191:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10982:51:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10992:35:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11021:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "11003:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "11003:24:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "10992:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10964:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "10974:7:3", + "type": "" + } + ], + "src": "10937:96:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11081:48:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11091:32:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11116:5:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "11109:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "11109:13:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "11102:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "11102:21:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11091:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11063:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11073:7:3", + "type": "" + } + ], + "src": "11039:90:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11180:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11190:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11201:5:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11190:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11162:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11172:7:3", + "type": "" + } + ], + "src": "11135:77:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11348:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11358:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11369:5:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11358:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11330:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11340:7:3", + "type": "" + } + ], + "src": "11218:162:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11431:81:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11441:65:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11456:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11463:42:3", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "11452:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "11452:54:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11441:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11413:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11423:7:3", + "type": "" + } + ], + "src": "11386:126:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11563:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11573:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11584:5:3" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "11573:7:3" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11545:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "11555:7:3", + "type": "" + } + ], + "src": "11518:77:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11677:82:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11687:66:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11747:5:3" + } + ], + "functionName": { + "name": "convert_t_contract$_ITellor_$1275_to_t_uint160", + "nodeType": "YulIdentifier", + "src": "11700:46:3" + }, + "nodeType": "YulFunctionCall", + "src": "11700:53:3" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "11687:9:3" + } + ] + } + ] + }, + "name": "convert_t_contract$_ITellor_$1275_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11657:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "11667:9:3", + "type": "" + } + ], + "src": "11601:158:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11841:53:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11851:37:3", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11882:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "11864:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "11864:24:3" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "11851:9:3" + } + ] + } + ] + }, + "name": "convert_t_contract$_ITellor_$1275_to_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11821:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "11831:9:3", + "type": "" + } + ], + "src": "11765:129:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12045:152:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12055:136:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12184:5:3" + } + ], + "functionName": { + "name": "cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", + "nodeType": "YulIdentifier", + "src": "12081:102:3" + }, + "nodeType": "YulFunctionCall", + "src": "12081:109:3" + } + ], + "functionName": { + "name": "shift_left_0", + "nodeType": "YulIdentifier", + "src": "12068:12:3" + }, + "nodeType": "YulFunctionCall", + "src": "12068:123:3" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "12055:9:3" + } + ] + } + ] + }, + "name": "convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12025:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "12035:9:3", + "type": "" + } + ], + "src": "11900:297:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12252:258:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12262:10:3", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12271:1:3", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "12266:1:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12331:63:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12356:3:3" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12361:1:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12352:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12352:11:3" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "12375:3:3" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12380:1:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12371:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12371:11:3" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12365:5:3" + }, + "nodeType": "YulFunctionCall", + "src": "12365:18:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12345:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "12345:39:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12345:39:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12292:1:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12295:6:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12289:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12289:13:3" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "12303:19:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12305:15:3", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12314:1:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12317:2:3", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12310:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12310:10:3" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12305:1:3" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "12285:3:3", + "statements": [] + }, + "src": "12281:113:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12428:76:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12478:3:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12483:6:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12474:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12474:16:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12492:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12467:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "12467:27:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12467:27:3" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12409:1:3" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12412:6:3" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12406:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12406:13:3" + }, + "nodeType": "YulIf", + "src": "12403:2:3" + } + ] + }, + "name": "copy_memory_to_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "12234:3:3", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "12239:3:3", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "12244:6:3", + "type": "" + } + ], + "src": "12203:307:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12559:238:3", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12569:58:3", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12591:6:3" + }, + { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "12621:4:3" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "12599:21:3" + }, + "nodeType": "YulFunctionCall", + "src": "12599:27:3" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12587:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "12587:40:3" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "12573:10:3", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12738:22:3", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "12740:16:3" + }, + "nodeType": "YulFunctionCall", + "src": "12740:18:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12740:18:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12681:10:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12693:18:3", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12678:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12678:34:3" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12717:10:3" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12729:6:3" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12714:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12714:22:3" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "12675:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "12675:62:3" + }, + "nodeType": "YulIf", + "src": "12672:2:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12776:2:3", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12780:10:3" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12769:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "12769:22:3" + }, + "nodeType": "YulExpressionStatement", + "src": "12769:22:3" + } + ] + }, + "name": "finalize_allocation", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "12545:6:3", + "type": "" + }, + { + "name": "size", + "nodeType": "YulTypedName", + "src": "12553:4:3", + "type": "" + } + ], + "src": "12516:281:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12850:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12860:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12871:5:3" + }, + "variableNames": [ + { + "name": "aligned", + "nodeType": "YulIdentifier", + "src": "12860:7:3" + } + ] + } + ] + }, + "name": "leftAlign_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12832:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nodeType": "YulTypedName", + "src": "12842:7:3", + "type": "" + } + ], + "src": "12803:79:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12935:32:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12945:16:3", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12956:5:3" + }, + "variableNames": [ + { + "name": "aligned", + "nodeType": "YulIdentifier", + "src": "12945:7:3" + } + ] + } + ] + }, + "name": "leftAlign_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12917:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "aligned", + "nodeType": "YulTypedName", + "src": "12927:7:3", + "type": "" + } + ], + "src": "12888:79:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13001:152:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13018:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13021:77:3", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13011:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13011:88:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13011:88:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13115:1:3", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13118:4:3", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13108:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13108:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13108:15:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13139:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13142:4:3", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13132:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13132:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13132:15:3" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "12973:180:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13187:152:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13204:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13207:77:3", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13197:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13197:88:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13197:88:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13301:1:3", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13304:4:3", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13294:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13294:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13294:15:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13325:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13328:4:3", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13318:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13318:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13318:15:3" + } + ] + }, + "name": "panic_error_0x12", + "nodeType": "YulFunctionDefinition", + "src": "13159:180:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13373:152:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13390:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13393:77:3", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13383:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13383:88:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13383:88:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13487:1:3", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13490:4:3", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13480:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13480:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13480:15:3" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13511:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13514:4:3", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13504:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13504:15:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13504:15:3" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "13345:180:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13579:54:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13589:38:3", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13607:5:3" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13614:2:3", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13603:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13603:14:3" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13623:2:3", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "13619:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13619:7:3" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13599:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13599:28:3" + }, + "variableNames": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "13589:6:3" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13562:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nodeType": "YulTypedName", + "src": "13572:6:3", + "type": "" + } + ], + "src": "13531:102:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13680:51:3", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13690:34:3", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13715:1:3", + "type": "", + "value": "0" + }, + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13718:5:3" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "13711:3:3" + }, + "nodeType": "YulFunctionCall", + "src": "13711:13:3" + }, + "variableNames": [ + { + "name": "newValue", + "nodeType": "YulIdentifier", + "src": "13690:8:3" + } + ] + } + ] + }, + "name": "shift_left_0", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13661:5:3", + "type": "" + } + ], + "returnVariables": [ + { + "name": "newValue", + "nodeType": "YulTypedName", + "src": "13671:8:3", + "type": "" + } + ], + "src": "13639:92:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13780:79:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "13837:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13846:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13849:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13839:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13839:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13839:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13803:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13828:5:3" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "13810:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "13810:24:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13800:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "13800:35:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13793:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13793:43:3" + }, + "nodeType": "YulIf", + "src": "13790:2:3" + } + ] + }, + "name": "validator_revert_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13773:5:3", + "type": "" + } + ], + "src": "13737:122:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13908:79:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "13965:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13974:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13977:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13967:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13967:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "13967:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13931:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13956:5:3" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "13938:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "13938:24:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13928:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "13928:35:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13921:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "13921:43:3" + }, + "nodeType": "YulIf", + "src": "13918:2:3" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13901:5:3", + "type": "" + } + ], + "src": "13865:122:3" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14036:79:3", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "14093:16:3", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14102:1:3", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14105:1:3", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14095:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "14095:12:3" + }, + "nodeType": "YulExpressionStatement", + "src": "14095:12:3" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14059:5:3" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14084:5:3" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "14066:17:3" + }, + "nodeType": "YulFunctionCall", + "src": "14066:24:3" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "14056:2:3" + }, + "nodeType": "YulFunctionCall", + "src": "14056:35:3" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "14049:6:3" + }, + "nodeType": "YulFunctionCall", + "src": "14049:43:3" + }, + "nodeType": "YulIf", + "src": "14046:2:3" + } + ] + }, + "name": "validator_revert_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "14029:5:3", + "type": "" + } + ], + "src": "13993:122:3" + } + ] + }, + "contents": "{\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n mstore(array, length) dst := add(array, 0x20)\n let src := offset\n if gt(add(src, mul(length, 0x20)), end) { revert(0, 0) }\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementPos := src\n mstore(dst, abi_decode_t_uint256_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n src := add(src, 0x20)\n }\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert(0, 0) }\n copy_memory_to_memory(src, dst, length)\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let length := mload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr_fromMemory(add(offset, 0x20), length, end)\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_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n\n value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_ITellor_$1275_to_t_address(value))\n }\n\n function abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(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_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bool_t_bytes_memory_ptr_t_uint256__to_t_bool_t_bytes_memory_ptr_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value1, tail)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n }\n\n function abi_encode_tuple_t_bool_t_uint256__to_t_bool_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_contract$_ITellor_$1275__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_ITellor_$1275_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\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 allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_allocation_size_t_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\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 function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function convert_t_contract$_ITellor_$1275_to_t_address(value) -> converted {\n converted := convert_t_contract$_ITellor_$1275_to_t_uint160(value)\n }\n\n function convert_t_contract$_ITellor_$1275_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(value)\n }\n\n function convert_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1_to_t_bytes32(value) -> converted {\n converted := shift_left_0(cleanup_t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1(value))\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function shift_left_0(value) -> newValue {\n newValue :=\n\n shl(0, value)\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", + "id": 3, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220241723a222553481bfba2cccf132f9ea89e9b4540020779f9524b186875faaed64736f6c63430008030033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x88 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA792765F GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xA792765F EQ PUSH2 0x13C JUMPI DUP1 PUSH4 0xADF1639D EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0xC5958AF9 EQ PUSH2 0x1A0 JUMPI DUP1 PUSH4 0xCE5E11BF EQ PUSH2 0x1D0 JUMPI PUSH2 0x88 JUMP JUMPDEST DUP1 PUSH4 0x1959AD5B EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0x29449085 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0x44E87F91 EQ PUSH2 0xDC JUMPI DUP1 PUSH4 0x77B03E0D EQ PUSH2 0x10C JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x95 PUSH2 0x200 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC5 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD3 SWAP3 SWAP2 SWAP1 PUSH2 0x1282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF1 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x1229 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x126 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x121 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x133 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x156 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x151 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0x8D7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x188 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x183 SWAP2 SWAP1 PUSH2 0x107C JUMP JUMPDEST PUSH2 0x989 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x197 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1244 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xA42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C7 SWAP2 SWAP1 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E5 SWAP2 SWAP1 PUSH2 0x10A5 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x1347 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x232 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x38F JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP5 PUSH2 0x253 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x261 DUP10 DUP5 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT PUSH2 0x27B JUMPI PUSH1 0x0 DUP1 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH2 0x285 DUP10 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x1 DUP3 SWAP7 POP SWAP7 POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST JUMPDEST PUSH1 0x1 ISZERO PUSH2 0x38A JUMPI DUP3 PUSH1 0x1 PUSH1 0x2 DUP6 DUP6 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0x2C3 SWAP2 SWAP1 PUSH2 0x1456 JUMP JUMPDEST PUSH2 0x2CD SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0x2D7 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP PUSH2 0x2E3 DUP10 DUP6 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP8 DUP2 LT ISZERO PUSH2 0x335 JUMPI PUSH1 0x0 PUSH2 0x305 DUP11 PUSH1 0x1 DUP8 PUSH2 0x300 SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT PUSH2 0x320 JUMPI PUSH1 0x1 DUP6 SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x32D SWAP2 SWAP1 PUSH2 0x1400 JUMP JUMPDEST SWAP4 POP POP PUSH2 0x385 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34D DUP11 PUSH1 0x1 DUP8 PUSH2 0x348 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP DUP9 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x1 DUP1 DUP7 PUSH2 0x365 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP8 POP SWAP8 POP POP POP POP POP POP POP PUSH2 0x398 JUMP JUMPDEST PUSH1 0x1 DUP6 PUSH2 0x381 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH2 0x2A1 JUMP JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x46F JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x53E JUMPI PUSH1 0x0 PUSH20 0x88DF592F8EB5D7BD38BFEF7DEB0FBC02CF3778A0 SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699F200F PUSH32 0xEFA19BAA864049F50491093580C5433E97E8D5E41F8DB1A61108B4FA44CACD93 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4E6 SWAP2 SWAP1 PUSH2 0x132C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x512 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x536 SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5DF JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5AA6E675 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x5DC SWAP2 SWAP1 PUSH2 0x1012 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x248638E5 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x610 SWAP3 SWAP2 SWAP1 PUSH2 0x11FD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x642 SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x65A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x66E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x697 SWAP2 SWAP1 PUSH2 0x103B JUMP JUMPDEST MLOAD GT SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0x771 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0x826 JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x35E72432 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CF SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7FB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x81F SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0x8D2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x77B03E0D DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x87F SWAP2 SWAP1 PUSH2 0x12AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x897 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x8CF SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x8EA DUP8 DUP8 PUSH2 0x224 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP2 PUSH2 0x914 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x920 DUP9 DUP4 PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x92C DUP9 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP6 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x964 JUMPI PUSH1 0x1 DUP6 DUP3 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP PUSH2 0x982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP6 POP SWAP6 POP SWAP6 POP POP POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0x999 DUP6 PUSH2 0x6A2 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0x9C4 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH1 0x0 SWAP4 POP SWAP4 POP SWAP4 POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9DC DUP7 PUSH1 0x1 DUP5 PUSH2 0x9D7 SWAP2 SWAP1 PUSH2 0x1487 JUMP JUMPDEST PUSH2 0xC86 JUMP JUMPDEST SWAP1 POP PUSH2 0x9E8 DUP7 DUP3 PUSH2 0xA42 JUMP JUMPDEST SWAP4 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 DUP5 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0xA1F JUMPI PUSH1 0x1 DUP5 DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP PUSH2 0xA3B JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP DUP3 SWAP5 POP SWAP5 POP SWAP5 POP POP POP JUMPDEST SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x60 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xB11 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xBCD JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB2D2B0D DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB71 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xB9D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBC6 SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP PUSH2 0xC80 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC5958AF9 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC28 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC54 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC7D SWAP2 SWAP1 PUSH2 0x10E1 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0x18431FD88ADF138E8B979A7246EB58EA7126EA16 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 PUSH2 0xD55 JUMPI POP PUSH20 0xE8218CACB0A5421BC6409E498D9F8CC8869945EA PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST ISZERO PUSH2 0xE0C JUMPI PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x7C37B8B4 DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDB5 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDCD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xDE1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE05 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCE5E11BF DUP5 DUP5 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE67 SWAP3 SWAP2 SWAP1 PUSH2 0x12C6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE7F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE93 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xEB7 SWAP2 SWAP1 PUSH2 0x1122 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xED3 PUSH2 0xECE DUP5 PUSH2 0x1387 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP DUP3 DUP6 PUSH1 0x20 DUP7 MUL DUP3 ADD GT ISZERO PUSH2 0xEF2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xF22 JUMPI DUP2 PUSH2 0xF08 DUP9 DUP3 PUSH2 0xFFD JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0xEF5 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF3F PUSH2 0xF3A DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH2 0x1362 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0xF57 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF62 DUP5 DUP3 DUP6 PUSH2 0x1555 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xF79 DUP2 PUSH2 0x1678 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xF90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xEC0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFB8 DUP2 PUSH2 0x168F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0xFCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH2 0xFDF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0xF2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFF7 DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x100C DUP2 PUSH2 0x16A6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1024 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1032 DUP5 DUP3 DUP6 ADD PUSH2 0xF6A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x104D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1067 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1073 DUP5 DUP3 DUP6 ADD PUSH2 0xF7F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x108E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x109C DUP5 DUP3 DUP6 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x10B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10C6 DUP6 DUP3 DUP7 ADD PUSH2 0xFA9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x10D7 DUP6 DUP3 DUP7 ADD PUSH2 0xFE8 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x10F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x110D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1119 DUP5 DUP3 DUP6 ADD PUSH2 0xFBE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1134 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1142 DUP5 DUP3 DUP6 ADD PUSH2 0xFFD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1154 DUP2 PUSH2 0x14CD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1163 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x117A PUSH2 0x1175 DUP3 PUSH2 0x14D9 JUMP JUMPDEST PUSH2 0x15B9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x118B DUP3 PUSH2 0x13E4 JUMP JUMPDEST PUSH2 0x1195 DUP2 DUP6 PUSH2 0x13EF JUMP JUMPDEST SWAP4 POP PUSH2 0x11A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1555 JUMP JUMPDEST PUSH2 0x11AE DUP2 PUSH2 0x165A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x11C2 DUP2 PUSH2 0x1517 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11D1 DUP2 PUSH2 0x153B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11E0 DUP2 PUSH2 0x150D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x11F7 PUSH2 0x11F2 DUP3 PUSH2 0x150D JUMP JUMPDEST PUSH2 0x15C3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1209 DUP3 DUP6 PUSH2 0x1169 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x1219 DUP3 DUP5 PUSH2 0x11E6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x123E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x114B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x1259 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x114B JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x126B DUP2 DUP6 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP PUSH2 0x127A PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1297 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x114B JUMP JUMPDEST PUSH2 0x12A4 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x12C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x115A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x12DB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x115A JUMP JUMPDEST PUSH2 0x12E8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1309 DUP2 DUP5 PUSH2 0x1180 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1326 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1341 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x135C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x11D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x136C PUSH2 0x137D JUMP JUMPDEST SWAP1 POP PUSH2 0x1378 DUP3 DUP3 PUSH2 0x1588 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13A2 JUMPI PUSH2 0x13A1 PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x13CE JUMPI PUSH2 0x13CD PUSH2 0x162B JUMP JUMPDEST JUMPDEST PUSH2 0x13D7 DUP3 PUSH2 0x165A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x140B DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x1416 DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x144B JUMPI PUSH2 0x144A PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1461 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x146C DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x147C JUMPI PUSH2 0x147B PUSH2 0x15FC JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1492 DUP3 PUSH2 0x150D JUMP JUMPDEST SWAP2 POP PUSH2 0x149D DUP4 PUSH2 0x150D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x14B0 JUMPI PUSH2 0x14AF PUSH2 0x15CD JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14C6 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1522 DUP3 PUSH2 0x1529 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1534 DUP3 PUSH2 0x14ED JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x154E PUSH2 0x1549 DUP4 PUSH2 0x14E3 JUMP JUMPDEST PUSH2 0x166B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1573 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1558 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1582 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1591 DUP3 PUSH2 0x165A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x15B0 JUMPI PUSH2 0x15AF PUSH2 0x162B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1681 DUP2 PUSH2 0x14BB JUMP JUMPDEST DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1698 DUP2 PUSH2 0x14D9 JUMP JUMPDEST DUP2 EQ PUSH2 0x16A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x16AF DUP2 PUSH2 0x150D JUMP JUMPDEST DUP2 EQ PUSH2 0x16BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x24 OR 0x23 LOG2 0x22 SSTORE CALLVALUE DUP2 0xBF 0xBA 0x2C 0xCC CALL ORIGIN 0xF9 0xEA DUP10 0xE9 0xB4 SLOAD STOP KECCAK256 PUSH24 0x9F9524B186875FAAED64736F6C6343000803003300000000 ", + "sourceMap": "186:109:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;274:21:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3013:2155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;6929:947;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5390:484;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1919:657;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;891:619;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;8113:505;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6108:528;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;274:21;;;;;;;;;;;;:::o;3013:2155::-;3127:11;3140:14;3170;3187:35;3213:8;3187:25;:35::i;:::-;3170:52;;3246:1;3237:6;:10;3233:1902;;;3263:14;3291:13;3307:1;3291:17;;3322:11;3345:1;3336:6;:10;;;;:::i;:::-;3322:24;;3360:13;3461:46;3491:8;3501:5;3461:29;:46::i;:::-;3453:54;;3534:10;3525:5;:19;3521:42;;3554:5;3561:1;3546:17;;;;;;;;;;;3521:42;3585:44;3615:8;3625:3;3585:29;:44::i;:::-;3577:52;;3655:10;3647:5;:18;3643:42;;;3675:4;3681:3;3667:18;;;;;;;;;;;3643:42;3775:1350;3782:4;3775:1350;;;3839:5;3835:1;3831;3822:5;3816:3;:11;;;;:::i;:::-;3815:17;;;;:::i;:::-;:21;;;;:::i;:::-;:29;;;;:::i;:::-;3806:38;;3870:47;3900:8;3910:6;3870:29;:47::i;:::-;3862:55;;3947:10;3939:5;:18;3935:1052;;;4028:17;4048:121;4103:8;4146:1;4137:6;:10;;;;:::i;:::-;4048:29;:121::i;:::-;4028:141;;4208:10;4195:9;:23;4191:281;;4297:4;4303:6;4289:21;;;;;;;;;;;;4191:281;4448:1;4439:6;:10;;;;:::i;:::-;4431:18;;3935:1052;;;;4518:17;4538:121;4593:8;4636:1;4627:6;:10;;;;:::i;:::-;4538:29;:121::i;:::-;4518:141;;4697:10;4685:9;:22;4681:288;;;4791:4;4806:1;4797:6;:10;;;;:::i;:::-;4783:25;;;;;;;;;;;;4681:288;4945:1;4936:6;:10;;;;:::i;:::-;4930:16;;3935:1052;;3775:1350;;;3233:1902;;;;;5152:5;5159:1;5144:17;;;;;3013:2155;;;;;;:::o;6929:947::-;7033:4;7053:19;7158:42;7140:61;;:6;;;;;;;;;;:61;;;:138;;;;7235:42;7217:61;;:6;;;;;;;;;;:61;;;7140:138;7123:559;;;7303:18;7349:42;7303:102;;7458:10;:20;;;7500:66;7458:126;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7419:179;;7123:559;;;;7651:6;;;;;;;;;;:17;;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7629:42;;7123:559;7868:1;7710:11;:42;;;7801:8;7811:10;7784:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7774:49;;;;;;7710:131;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:155;:159;7691:178;;;6929:947;;;;:::o;5390:484::-;5488:7;5587:42;5569:61;;:6;;;;;;;;;;:61;;;:138;;;;5664:42;5646:61;;:6;;;;;;;;;;:61;;;5569:138;5552:316;;;5739:6;;;;;;;;;;:28;;;5768:8;5739:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5732:45;;;;5552:316;5815:6;;;;;;;;;;:32;;;5848:8;5815:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5808:49;;5390:484;;;;:::o;1919:657::-;2038:16;2068:19;2101:27;2154:11;2167:14;2185:77;2220:8;2242:10;2185:21;:77::i;:::-;2153:109;;;;2277:6;2272:41;;2293:5;2300:9;;;;;;;;;;;;2311:1;2285:28;;;;;;;;;;2272:41;2323:13;2339:47;2369:8;2379:6;2339:29;:47::i;:::-;2323:63;;2405:29;2418:8;2428:5;2405:12;:29::i;:::-;2396:38;;2479:9;;;;;;;;;;;;2469:20;;;;;;2458:6;2448:17;;;;;;:41;2444:87;;2511:4;2517:6;2525:5;2503:28;;;;;;;;;;;2444:87;2549:5;2556:9;;;;;;;;;;;;2567:1;2541:28;;;;;;;;;1919:657;;;;;;:::o;891:619::-;992:16;1022:19;1055:27;1107:14;1124:35;1150:8;1124:25;:35::i;:::-;1107:52;;1184:1;1174:6;:11;1170:70;;;1209:5;1216:9;;;;;;;;;;;;1227:1;1201:28;;;;;;;;;1170:70;1249:13;1265:51;1295:8;1314:1;1305:6;:10;;;;:::i;:::-;1265:29;:51::i;:::-;1249:67;;1335:29;1348:8;1358:5;1335:12;:29::i;:::-;1326:38;;1409:9;;;;;;;;;;;;1399:20;;;;;;1388:6;1378:17;;;;;;:41;1374:87;;1441:4;1447:6;1455:5;1433:28;;;;;;;;;;1374:87;1479:5;1486:9;;;;;;;;;;;;1497:5;1471:32;;;;;;;;891:619;;;;;;:::o;8113:505::-;8218:12;8322:42;8304:61;;:6;;;;;;;;;;:61;;;:138;;;;8399:42;8381:61;;:6;;;;;;;;;;:61;;;8304:138;8287:325;;;8474:6;;;;;;;;;;:26;;;8501:8;8511:10;8474:48;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8467:55;;;;8287:325;8560:6;;;;;;;;;;:19;;;8580:8;8590:10;8560:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8553:48;;8113:505;;;;;:::o;6108:528::-;6226:7;6325:42;6307:61;;:6;;;;;;;;;;:61;;;:138;;;;6402:42;6384:61;;:6;;;;;;;;;;:61;;;6307:138;6290:340;;;6477:6;;;;;;;;;;:32;;;6510:8;6520:6;6477:50;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6470:57;;;;6290:340;6565:6;;;;;;;;;;:36;;;6602:8;6612:6;6565:54;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6558:61;;6108:528;;;;;:::o;24:645:3:-;;156:81;172:64;229:6;172:64;:::i;:::-;156:81;:::i;:::-;147:90;;257:5;285:6;278:5;271:21;311:4;304:5;300:16;293:23;;336:6;386:3;378:4;370:6;366:17;361:3;357:27;354:36;351:2;;;403:1;400;393:12;351:2;431:1;416:247;441:6;438:1;435:13;416:247;;;508:3;536:48;580:3;568:10;536:48;:::i;:::-;531:3;524:61;614:4;609:3;605:14;598:21;;648:4;643:3;639:14;632:21;;476:187;463:1;460;456:9;451:14;;416:247;;;420:14;137:532;;;;;;;:::o;675:352::-;;788:65;804:48;845:6;804:48;:::i;:::-;788:65;:::i;:::-;779:74;;876:6;869:5;862:21;914:4;907:5;903:16;952:3;943:6;938:3;934:16;931:25;928:2;;;969:1;966;959:12;928:2;982:39;1014:6;1009:3;1004;982:39;:::i;:::-;769:258;;;;;;:::o;1033:143::-;;1121:6;1115:13;1106:22;;1137:33;1164:5;1137:33;:::i;:::-;1096:80;;;;:::o;1199:318::-;;1330:3;1323:4;1315:6;1311:17;1307:27;1297:2;;1348:1;1345;1338:12;1297:2;1381:6;1375:13;1406:105;1507:3;1499:6;1492:4;1484:6;1480:17;1406:105;:::i;:::-;1397:114;;1287:230;;;;;:::o;1523:139::-;;1607:6;1594:20;1585:29;;1623:33;1650:5;1623:33;:::i;:::-;1575:87;;;;:::o;1681:286::-;;1796:3;1789:4;1781:6;1777:17;1773:27;1763:2;;1814:1;1811;1804:12;1763:2;1847:6;1841:13;1872:89;1957:3;1949:6;1942:4;1934:6;1930:17;1872:89;:::i;:::-;1863:98;;1753:214;;;;;:::o;1973:139::-;;2057:6;2044:20;2035:29;;2073:33;2100:5;2073:33;:::i;:::-;2025:87;;;;:::o;2118:143::-;;2206:6;2200:13;2191:22;;2222:33;2249:5;2222:33;:::i;:::-;2181:80;;;;:::o;2267:284::-;;2386:2;2374:9;2365:7;2361:23;2357:32;2354:2;;;2402:1;2399;2392:12;2354:2;2445:1;2470:64;2526:7;2517:6;2506:9;2502:22;2470:64;:::i;:::-;2460:74;;2416:128;2344:207;;;;:::o;2557:420::-;;2701:2;2689:9;2680:7;2676:23;2672:32;2669:2;;;2717:1;2714;2707:12;2669:2;2781:1;2770:9;2766:17;2760:24;2811:18;2803:6;2800:30;2797:2;;;2843:1;2840;2833:12;2797:2;2871:89;2952:7;2943:6;2932:9;2928:22;2871:89;:::i;:::-;2861:99;;2731:239;2659:318;;;;:::o;2983:262::-;;3091:2;3079:9;3070:7;3066:23;3062:32;3059:2;;;3107:1;3104;3097:12;3059:2;3150:1;3175:53;3220:7;3211:6;3200:9;3196:22;3175:53;:::i;:::-;3165:63;;3121:117;3049:196;;;;:::o;3251:407::-;;;3376:2;3364:9;3355:7;3351:23;3347:32;3344:2;;;3392:1;3389;3382:12;3344:2;3435:1;3460:53;3505:7;3496:6;3485:9;3481:22;3460:53;:::i;:::-;3450:63;;3406:117;3562:2;3588:53;3633:7;3624:6;3613:9;3609:22;3588:53;:::i;:::-;3578:63;;3533:118;3334:324;;;;;:::o;3664:388::-;;3792:2;3780:9;3771:7;3767:23;3763:32;3760:2;;;3808:1;3805;3798:12;3760:2;3872:1;3861:9;3857:17;3851:24;3902:18;3894:6;3891:30;3888:2;;;3934:1;3931;3924:12;3888:2;3962:73;4027:7;4018:6;4007:9;4003:22;3962:73;:::i;:::-;3952:83;;3822:223;3750:302;;;;:::o;4058:284::-;;4177:2;4165:9;4156:7;4152:23;4148:32;4145:2;;;4193:1;4190;4183:12;4145:2;4236:1;4261:64;4317:7;4308:6;4297:9;4293:22;4261:64;:::i;:::-;4251:74;;4207:128;4135:207;;;;:::o;4348:109::-;4429:21;4444:5;4429:21;:::i;:::-;4424:3;4417:34;4407:50;;:::o;4463:118::-;4550:24;4568:5;4550:24;:::i;:::-;4545:3;4538:37;4528:53;;:::o;4587:157::-;4692:45;4712:24;4730:5;4712:24;:::i;:::-;4692:45;:::i;:::-;4687:3;4680:58;4670:74;;:::o;4750:360::-;;4864:38;4896:5;4864:38;:::i;:::-;4918:70;4981:6;4976:3;4918:70;:::i;:::-;4911:77;;4997:52;5042:6;5037:3;5030:4;5023:5;5019:16;4997:52;:::i;:::-;5074:29;5096:6;5074:29;:::i;:::-;5069:3;5065:39;5058:46;;4840:270;;;;;:::o;5116:163::-;5219:53;5266:5;5219:53;:::i;:::-;5214:3;5207:66;5197:82;;:::o;5285:301::-;5457:122;5573:5;5457:122;:::i;:::-;5452:3;5445:135;5435:151;;:::o;5592:118::-;5679:24;5697:5;5679:24;:::i;:::-;5674:3;5667:37;5657:53;;:::o;5716:157::-;5821:45;5841:24;5859:5;5841:24;:::i;:::-;5821:45;:::i;:::-;5816:3;5809:58;5799:74;;:::o;5879:397::-;;6034:75;6105:3;6096:6;6034:75;:::i;:::-;6134:2;6129:3;6125:12;6118:19;;6147:75;6218:3;6209:6;6147:75;:::i;:::-;6247:2;6242:3;6238:12;6231:19;;6267:3;6260:10;;6023:253;;;;;:::o;6282:210::-;;6407:2;6396:9;6392:18;6384:26;;6420:65;6482:1;6471:9;6467:17;6458:6;6420:65;:::i;:::-;6374:118;;;;:::o;6498:517::-;;6697:2;6686:9;6682:18;6674:26;;6710:65;6772:1;6761:9;6757:17;6748:6;6710:65;:::i;:::-;6822:9;6816:4;6812:20;6807:2;6796:9;6792:18;6785:48;6850:76;6921:4;6912:6;6850:76;:::i;:::-;6842:84;;6936:72;7004:2;6993:9;6989:18;6980:6;6936:72;:::i;:::-;6664:351;;;;;;:::o;7021:320::-;;7174:2;7163:9;7159:18;7151:26;;7187:65;7249:1;7238:9;7234:17;7225:6;7187:65;:::i;:::-;7262:72;7330:2;7319:9;7315:18;7306:6;7262:72;:::i;:::-;7141:200;;;;;:::o;7347:222::-;;7478:2;7467:9;7463:18;7455:26;;7491:71;7559:1;7548:9;7544:17;7535:6;7491:71;:::i;:::-;7445:124;;;;:::o;7575:332::-;;7734:2;7723:9;7719:18;7711:26;;7747:71;7815:1;7804:9;7800:17;7791:6;7747:71;:::i;:::-;7828:72;7896:2;7885:9;7881:18;7872:6;7828:72;:::i;:::-;7701:206;;;;;:::o;7913:309::-;;8062:2;8051:9;8047:18;8039:26;;8111:9;8105:4;8101:20;8097:1;8086:9;8082:17;8075:47;8139:76;8210:4;8201:6;8139:76;:::i;:::-;8131:84;;8029:193;;;;:::o;8228:254::-;;8375:2;8364:9;8360:18;8352:26;;8388:87;8472:1;8461:9;8457:17;8448:6;8388:87;:::i;:::-;8342:140;;;;:::o;8488:392::-;;8704:2;8693:9;8689:18;8681:26;;8717:156;8870:1;8859:9;8855:17;8846:6;8717:156;:::i;:::-;8671:209;;;;:::o;8886:222::-;;9017:2;9006:9;9002:18;8994:26;;9030:71;9098:1;9087:9;9083:17;9074:6;9030:71;:::i;:::-;8984:124;;;;:::o;9114:129::-;;9175:20;;:::i;:::-;9165:30;;9204:33;9232:4;9224:6;9204:33;:::i;:::-;9155:88;;;:::o;9249:75::-;;9315:2;9309:9;9299:19;;9289:35;:::o;9330:311::-;;9497:18;9489:6;9486:30;9483:2;;;9519:18;;:::i;:::-;9483:2;9569:4;9561:6;9557:17;9549:25;;9629:4;9623;9619:15;9611:23;;9412:229;;;:::o;9647:307::-;;9798:18;9790:6;9787:30;9784:2;;;9820:18;;:::i;:::-;9784:2;9858:29;9880:6;9858:29;:::i;:::-;9850:37;;9942:4;9936;9932:15;9924:23;;9713:241;;;:::o;9960:98::-;;10045:5;10039:12;10029:22;;10018:40;;;:::o;10064:168::-;;10181:6;10176:3;10169:19;10221:4;10216:3;10212:14;10197:29;;10159:73;;;;:::o;10238:305::-;;10297:20;10315:1;10297:20;:::i;:::-;10292:25;;10331:20;10349:1;10331:20;:::i;:::-;10326:25;;10485:1;10417:66;10413:74;10410:1;10407:81;10404:2;;;10491:18;;:::i;:::-;10404:2;10535:1;10532;10528:9;10521:16;;10282:261;;;;:::o;10549:185::-;;10606:20;10624:1;10606:20;:::i;:::-;10601:25;;10640:20;10658:1;10640:20;:::i;:::-;10635:25;;10679:1;10669:2;;10684:18;;:::i;:::-;10669:2;10726:1;10723;10719:9;10714:14;;10591:143;;;;:::o;10740:191::-;;10800:20;10818:1;10800:20;:::i;:::-;10795:25;;10834:20;10852:1;10834:20;:::i;:::-;10829:25;;10873:1;10870;10867:8;10864:2;;;10878:18;;:::i;:::-;10864:2;10923:1;10920;10916:9;10908:17;;10785:146;;;;:::o;10937:96::-;;11003:24;11021:5;11003:24;:::i;:::-;10992:35;;10982:51;;;:::o;11039:90::-;;11116:5;11109:13;11102:21;11091:32;;11081:48;;;:::o;11135:77::-;;11201:5;11190:16;;11180:32;;;:::o;11218:162::-;;11369:5;11358:16;;11348:32;;;:::o;11386:126::-;;11463:42;11456:5;11452:54;11441:65;;11431:81;;;:::o;11518:77::-;;11584:5;11573:16;;11563:32;;;:::o;11601:158::-;;11700:53;11747:5;11700:53;:::i;:::-;11687:66;;11677:82;;;:::o;11765:129::-;;11864:24;11882:5;11864:24;:::i;:::-;11851:37;;11841:53;;;:::o;11900:297::-;;12068:123;12081:109;12184:5;12081:109;:::i;:::-;12068:123;:::i;:::-;12055:136;;12045:152;;;:::o;12203:307::-;12271:1;12281:113;12295:6;12292:1;12289:13;12281:113;;;12380:1;12375:3;12371:11;12365:18;12361:1;12356:3;12352:11;12345:39;12317:2;12314:1;12310:10;12305:15;;12281:113;;;12412:6;12409:1;12406:13;12403:2;;;12492:1;12483:6;12478:3;12474:16;12467:27;12403:2;12252:258;;;;:::o;12516:281::-;12599:27;12621:4;12599:27;:::i;:::-;12591:6;12587:40;12729:6;12717:10;12714:22;12693:18;12681:10;12678:34;12675:62;12672:2;;;12740:18;;:::i;:::-;12672:2;12780:10;12776:2;12769:22;12559:238;;;:::o;12803:79::-;;12871:5;12860:16;;12850:32;;;:::o;12888:79::-;;12956:5;12945:16;;12935:32;;;:::o;12973:180::-;13021:77;13018:1;13011:88;13118:4;13115:1;13108:15;13142:4;13139:1;13132:15;13159:180;13207:77;13204:1;13197:88;13304:4;13301:1;13294:15;13328:4;13325:1;13318:15;13345:180;13393:77;13390:1;13383:88;13490:4;13487:1;13480:15;13514:4;13511:1;13504:15;13531:102;;13623:2;13619:7;13614:2;13607:5;13603:14;13599:28;13589:38;;13579:54;;;:::o;13639:92::-;;13718:5;13715:1;13711:13;13690:34;;13680:51;;;:::o;13737:122::-;13810:24;13828:5;13810:24;:::i;:::-;13803:5;13800:35;13790:2;;13849:1;13846;13839:12;13790:2;13780:79;:::o;13865:122::-;13938:24;13956:5;13938:24;:::i;:::-;13931:5;13928:35;13918:2;;13977:1;13974;13967:12;13918:2;13908:79;:::o;13993:122::-;14066:24;14084:5;14066:24;:::i;:::-;14059:5;14056:35;14046:2;;14105:1;14102;14095:12;14046:2;14036:79;:::o" + }, + "methodIdentifiers": { + "getCurrentValue(bytes32)": "adf1639d", + "getDataBefore(bytes32,uint256)": "a792765f", + "getIndexForDataBefore(bytes32,uint256)": "29449085", + "getNewValueCountbyQueryId(bytes32)": "77b03e0d", + "getTimestampbyQueryIdandIndex(bytes32,uint256)": "ce5e11bf", + "isInDispute(bytes32,uint256)": "44e87f91", + "retrieveData(bytes32,uint256)": "c5958af9", + "tellor()": "1959ad5b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.3+commit.8d00100c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_tellor\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getCurrentValue\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_ifRetrieve\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"_value\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"_timestampRetrieved\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getIndexForDataBefore\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_found\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"}],\"name\":\"getNewValueCountbyQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_index\",\"type\":\"uint256\"}],\"name\":\"getTimestampbyQueryIdandIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"isInDispute\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_queryId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"retrieveData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tellor\",\"outputs\":[{\"internalType\":\"contract ITellor\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"getCurrentValue(bytes32)\":{\"details\":\"Allows the user to get the latest value for the queryId specified\",\"params\":{\"_queryId\":\"is the id to look up the value for\"},\"returns\":{\"_ifRetrieve\":\"bool true if non-zero value successfully retrieved\",\"_timestampRetrieved\":\"the retrieved value's timestamp\",\"_value\":\"the value retrieved\"}},\"getDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves the latest value for the queryId before the specified timestamp\",\"params\":{\"_queryId\":\"is the queryId to look up the value for\",\"_timestamp\":\"before which to search for latest value\"},\"returns\":{\"_ifRetrieve\":\"bool true if able to retrieve a non-zero value\",\"_timestampRetrieved\":\"the value's timestamp\",\"_value\":\"the value retrieved\"}},\"getIndexForDataBefore(bytes32,uint256)\":{\"details\":\"Retrieves latest array index of data before the specified timestamp for the queryId\",\"params\":{\"_queryId\":\"is the queryId to look up the index for\",\"_timestamp\":\"is the timestamp before which to search for the latest index\"},\"returns\":{\"_found\":\"whether the index was found\",\"_index\":\"the latest index found before the specified timestamp\"}},\"getNewValueCountbyQueryId(bytes32)\":{\"details\":\"Counts the number of values that have been submitted for the queryId\",\"params\":{\"_queryId\":\"the id to look up\"},\"returns\":{\"_0\":\"uint256 count of the number of values received for the queryId\"}},\"isInDispute(bytes32,uint256)\":{\"details\":\"Determines whether a value with a given queryId and timestamp has been disputed\",\"params\":{\"_queryId\":\"is the value id to look up\",\"_timestamp\":\"is the timestamp of the value to look up\"},\"returns\":{\"_0\":\"bool true if queryId/timestamp is under dispute\"}},\"retrieveData(bytes32,uint256)\":{\"details\":\"Retrieve value from oracle based on queryId/timestamp\",\"params\":{\"_queryId\":\"being requested\",\"_timestamp\":\"to retrieve data/value from\"},\"returns\":{\"_0\":\"bytes value for query/timestamp submitted\"}}},\"title\":\"UserContract This contract inherits UsingTellor for simulating user interaction\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/mocks/BenchUsingTellor.sol\":\"BenchUsingTellor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/UsingTellor.sol\":{\"keccak256\":\"0x92f27d93725f4bbda8434d00f4eaceacf9b590e6a668607cf832d2490d095b9c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c229768f6909ab94b7b3a2dfa1980977d89513b84b02ac170851913459b4808f\",\"dweb:/ipfs/QmdHnNLQbDJML5ENDMybf7UNSkgpiKegWkoDP47syz2xdj\"]},\"contracts/interface/ITellor.sol\":{\"keccak256\":\"0xa5a51f40da64e5049b95fe53a77bfcf751d87107cca29906a1c8bd35b28e9001\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e7290418621dacc2fe85c4715d6e627b60d3ecef6c424e1e8c6ee66e3b27969\",\"dweb:/ipfs/QmNmEdmUGpTq6hGwQd7pMhAg42pV5ypaFvhLxCrVPB8wRE\"]},\"contracts/mocks/BenchUsingTellor.sol\":{\"keccak256\":\"0x8ff590b6f7560f68a48633efb334cdb00a3f7eb8e218b86f28553403adfb5840\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a70a62c396eaa2b698cb5ac2b9532bf84edce87316deac5fc79fe4912f3d2263\",\"dweb:/ipfs/QmbsAYBsnP1n3LxfQcF6r8UNyfqUhtexCSVitdHDvbUUnD\"]}},\"version\":1}" + } + } + }, + "sources": { + "contracts/UsingTellor.sol": { + "ast": { + "absolutePath": "contracts/UsingTellor.sol", + "exportedSymbols": { + "ITellor": [ + 1275 + ], + "UsingTellor": [ + 493 + ] + }, + "id": 494, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + ">=", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "32:24:0" + }, + { + "absolutePath": "contracts/interface/ITellor.sol", + "file": "./interface/ITellor.sol", + "id": 2, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 494, + "sourceUnit": 1276, + "src": "58:33:0", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 3, + "nodeType": "StructuredDocumentation", + "src": "93:153:0", + "text": " @title UserContract\n This contract allows for easy integration with the Tellor System\n by helping smart contracts to read data from Tellor" + }, + "fullyImplemented": true, + "id": 493, + "linearizedBaseContracts": [ + 493 + ], + "name": "UsingTellor", + "nameLocation": "256:11:0", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "1959ad5b", + "id": 6, + "mutability": "mutable", + "name": "tellor", + "nameLocation": "289:6:0", + "nodeType": "VariableDeclaration", + "scope": 493, + "src": "274:21:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "typeName": { + "id": 5, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4, + "name": "ITellor", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1275, + "src": "274:7:0" + }, + "referencedDeclaration": 1275, + "src": "274:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 18, + "nodeType": "Block", + "src": "488:42:0", + "statements": [ + { + "expression": { + "id": 16, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 12, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "498:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 14, + "name": "_tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9, + "src": "515:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 13, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "507:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 15, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "507:16:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "498:25:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 17, + "nodeType": "ExpressionStatement", + "src": "498:25:0" + } + ] + }, + "documentation": { + "id": 7, + "nodeType": "StructuredDocumentation", + "src": "322:124:0", + "text": " @dev the constructor sets the tellor address in storage\n @param _tellor is the TellorMaster address" + }, + "id": 19, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 10, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9, + "mutability": "mutable", + "name": "_tellor", + "nameLocation": "479:7:0", + "nodeType": "VariableDeclaration", + "scope": 19, + "src": "463:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 8, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "463:15:0", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + } + ], + "src": "462:25:0" + }, + "returnParameters": { + "id": 11, + "nodeType": "ParameterList", + "parameters": [], + "src": "488:0:0" + }, + "scope": 493, + "src": "451:79:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 90, + "nodeType": "Block", + "src": "1097:413:0", + "statements": [ + { + "assignments": [ + 32 + ], + "declarations": [ + { + "constant": false, + "id": 32, + "mutability": "mutable", + "name": "_count", + "nameLocation": "1115:6:0", + "nodeType": "VariableDeclaration", + "scope": 90, + "src": "1107:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 31, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1107:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 36, + "initialValue": { + "arguments": [ + { + "id": 34, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "1150:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 33, + "name": "getNewValueCountbyQueryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 352, + "src": "1124:25:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$", + "typeString": "function (bytes32) view returns (uint256)" + } + }, + "id": 35, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1124:35:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1107:52:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 39, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 37, + "name": "_count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 32, + "src": "1174:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 38, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1184:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1174:11:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 49, + "nodeType": "IfStatement", + "src": "1170:70:0", + "trueBody": { + "id": 48, + "nodeType": "Block", + "src": "1187:53:0", + "statements": [ + { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 40, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1209:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "arguments": [ + { + "hexValue": "", + "id": 43, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1222:2:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 42, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1216:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 41, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1216:5:0", + "typeDescriptions": {} + } + }, + "id": 44, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1216:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 45, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1227:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 46, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1208:21:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,bytes memory,int_const 0)" + } + }, + "functionReturnParameters": 30, + "id": 47, + "nodeType": "Return", + "src": "1201:28:0" + } + ] + } + }, + { + "assignments": [ + 51 + ], + "declarations": [ + { + "constant": false, + "id": 51, + "mutability": "mutable", + "name": "_time", + "nameLocation": "1257:5:0", + "nodeType": "VariableDeclaration", + "scope": 90, + "src": "1249:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 50, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1249:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 58, + "initialValue": { + "arguments": [ + { + "id": 53, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "1295:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 56, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 54, + "name": "_count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 32, + "src": "1305:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 55, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1314:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1305:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 52, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "1265:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 57, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1265:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1249:67:0" + }, + { + "expression": { + "id": 64, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 59, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27, + "src": "1326:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 61, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "1348:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 62, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 51, + "src": "1358:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 60, + "name": "retrieveData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 492, + "src": "1335:12:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,uint256) view returns (bytes memory)" + } + }, + "id": 63, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1335:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "1326:38:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 65, + "nodeType": "ExpressionStatement", + "src": "1326:38:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 75, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 67, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27, + "src": "1388:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 66, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1378:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 68, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1378:17:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "", + "id": 72, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1415:2:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 71, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1409:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 70, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1409:5:0", + "typeDescriptions": {} + } + }, + "id": 73, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1409:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 69, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1399:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 74, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1399:20:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "1378:41:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 81, + "nodeType": "IfStatement", + "src": "1374:87:0", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 76, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1441:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 77, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27, + "src": "1447:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 78, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 51, + "src": "1455:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 79, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1440:21:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bool,bytes memory,uint256)" + } + }, + "functionReturnParameters": 30, + "id": 80, + "nodeType": "Return", + "src": "1433:28:0" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 82, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1479:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "arguments": [ + { + "hexValue": "", + "id": 85, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1492:2:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 84, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1486:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 83, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1486:5:0", + "typeDescriptions": {} + } + }, + "id": 86, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1486:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 87, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 51, + "src": "1497:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 88, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1478:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bool,bytes memory,uint256)" + } + }, + "functionReturnParameters": 30, + "id": 89, + "nodeType": "Return", + "src": "1471:32:0" + } + ] + }, + "documentation": { + "id": 20, + "nodeType": "StructuredDocumentation", + "src": "552:334:0", + "text": " @dev Allows the user to get the latest value for the queryId specified\n @param _queryId is the id to look up the value for\n @return _ifRetrieve bool true if non-zero value successfully retrieved\n @return _value the value retrieved\n @return _timestampRetrieved the retrieved value's timestamp" + }, + "functionSelector": "adf1639d", + "id": 91, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getCurrentValue", + "nameLocation": "900:15:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 23, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 22, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "924:8:0", + "nodeType": "VariableDeclaration", + "scope": 91, + "src": "916:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 21, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "916:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "915:18:0" + }, + "returnParameters": { + "id": 30, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25, + "mutability": "mutable", + "name": "_ifRetrieve", + "nameLocation": "997:11:0", + "nodeType": "VariableDeclaration", + "scope": 91, + "src": "992:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 24, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "992:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27, + "mutability": "mutable", + "name": "_value", + "nameLocation": "1035:6:0", + "nodeType": "VariableDeclaration", + "scope": 91, + "src": "1022:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 26, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1022:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29, + "mutability": "mutable", + "name": "_timestampRetrieved", + "nameLocation": "1063:19:0", + "nodeType": "VariableDeclaration", + "scope": 91, + "src": "1055:27:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1055:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "978:114:0" + }, + "scope": 493, + "src": "891:619:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 163, + "nodeType": "Block", + "src": "2143:433:0", + "statements": [ + { + "assignments": [ + 106, + 108 + ], + "declarations": [ + { + "constant": false, + "id": 106, + "mutability": "mutable", + "name": "_found", + "nameLocation": "2159:6:0", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "2154:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 105, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2154:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 108, + "mutability": "mutable", + "name": "_index", + "nameLocation": "2175:6:0", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "2167:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 107, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2167:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 113, + "initialValue": { + "arguments": [ + { + "id": 110, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "2220:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 111, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 96, + "src": "2242:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 109, + "name": "getIndexForDataBefore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 319, + "src": "2185:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bool_$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (bool,uint256)" + } + }, + "id": 112, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2185:77:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2153:109:0" + }, + { + "condition": { + "id": 115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2276:7:0", + "subExpression": { + "id": 114, + "name": "_found", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 106, + "src": "2277:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 124, + "nodeType": "IfStatement", + "src": "2272:41:0", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2293:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "arguments": [ + { + "hexValue": "", + "id": 119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2306:2:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2300:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 117, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2300:5:0", + "typeDescriptions": {} + } + }, + "id": 120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2300:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 121, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2311:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 122, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2292:21:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,bytes memory,int_const 0)" + } + }, + "functionReturnParameters": 104, + "id": 123, + "nodeType": "Return", + "src": "2285:28:0" + } + }, + { + "assignments": [ + 126 + ], + "declarations": [ + { + "constant": false, + "id": 126, + "mutability": "mutable", + "name": "_time", + "nameLocation": "2331:5:0", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "2323:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 125, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2323:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 131, + "initialValue": { + "arguments": [ + { + "id": 128, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "2369:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 129, + "name": "_index", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "2379:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 127, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "2339:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2339:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2323:63:0" + }, + { + "expression": { + "id": 137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 132, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "2396:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 134, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "2418:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 135, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 126, + "src": "2428:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 133, + "name": "retrieveData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 492, + "src": "2405:12:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,uint256) view returns (bytes memory)" + } + }, + "id": 136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2405:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "2396:38:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 138, + "nodeType": "ExpressionStatement", + "src": "2396:38:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 140, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "2458:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 139, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2448:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2448:17:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "", + "id": 145, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2485:2:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 144, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2479:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 143, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2479:5:0", + "typeDescriptions": {} + } + }, + "id": 146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2479:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 142, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2469:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2469:20:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "2448:41:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 154, + "nodeType": "IfStatement", + "src": "2444:87:0", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2511:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 150, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "2517:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 151, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 126, + "src": "2525:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 152, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2510:21:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_uint256_$", + "typeString": "tuple(bool,bytes memory,uint256)" + } + }, + "functionReturnParameters": 104, + "id": 153, + "nodeType": "Return", + "src": "2503:28:0" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2549:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "arguments": [ + { + "hexValue": "", + "id": 158, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2562:2:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2556:5:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 156, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2556:5:0", + "typeDescriptions": {} + } + }, + "id": 159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2556:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "hexValue": "30", + "id": 160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2567:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 161, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2548:21:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,bytes memory,int_const 0)" + } + }, + "functionReturnParameters": 104, + "id": 162, + "nodeType": "Return", + "src": "2541:28:0" + } + ] + }, + "documentation": { + "id": 92, + "nodeType": "StructuredDocumentation", + "src": "1516:398:0", + "text": " @dev Retrieves the latest value for the queryId before the specified timestamp\n @param _queryId is the queryId to look up the value for\n @param _timestamp before which to search for latest value\n @return _ifRetrieve bool true if able to retrieve a non-zero value\n @return _value the value retrieved\n @return _timestampRetrieved the value's timestamp" + }, + "functionSelector": "a792765f", + "id": 164, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getDataBefore", + "nameLocation": "1928:13:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 97, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 94, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "1950:8:0", + "nodeType": "VariableDeclaration", + "scope": 164, + "src": "1942:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 93, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1942:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 96, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "1968:10:0", + "nodeType": "VariableDeclaration", + "scope": 164, + "src": "1960:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 95, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1960:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1941:38:0" + }, + "returnParameters": { + "id": 104, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 99, + "mutability": "mutable", + "name": "_ifRetrieve", + "nameLocation": "2043:11:0", + "nodeType": "VariableDeclaration", + "scope": 164, + "src": "2038:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 98, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2038:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 101, + "mutability": "mutable", + "name": "_value", + "nameLocation": "2081:6:0", + "nodeType": "VariableDeclaration", + "scope": 164, + "src": "2068:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 100, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2068:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 103, + "mutability": "mutable", + "name": "_timestampRetrieved", + "nameLocation": "2109:19:0", + "nodeType": "VariableDeclaration", + "scope": 164, + "src": "2101:27:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 102, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2101:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2024:114:0" + }, + "scope": 493, + "src": "1919:657:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 318, + "nodeType": "Block", + "src": "3160:2008:0", + "statements": [ + { + "assignments": [ + 177 + ], + "declarations": [ + { + "constant": false, + "id": 177, + "mutability": "mutable", + "name": "_count", + "nameLocation": "3178:6:0", + "nodeType": "VariableDeclaration", + "scope": 318, + "src": "3170:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 176, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3170:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 181, + "initialValue": { + "arguments": [ + { + "id": 179, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 167, + "src": "3213:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 178, + "name": "getNewValueCountbyQueryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 352, + "src": "3187:25:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$", + "typeString": "function (bytes32) view returns (uint256)" + } + }, + "id": 180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3187:35:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3170:52:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 184, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 182, + "name": "_count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 177, + "src": "3237:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3246:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3237:10:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 313, + "nodeType": "IfStatement", + "src": "3233:1902:0", + "trueBody": { + "id": 312, + "nodeType": "Block", + "src": "3249:1886:0", + "statements": [ + { + "assignments": [ + 186 + ], + "declarations": [ + { + "constant": false, + "id": 186, + "mutability": "mutable", + "name": "middle", + "nameLocation": "3271:6:0", + "nodeType": "VariableDeclaration", + "scope": 312, + "src": "3263:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 185, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3263:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 187, + "nodeType": "VariableDeclarationStatement", + "src": "3263:14:0" + }, + { + "assignments": [ + 189 + ], + "declarations": [ + { + "constant": false, + "id": 189, + "mutability": "mutable", + "name": "start", + "nameLocation": "3299:5:0", + "nodeType": "VariableDeclaration", + "scope": 312, + "src": "3291:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 188, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3291:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 191, + "initialValue": { + "hexValue": "30", + "id": 190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3307:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3291:17:0" + }, + { + "assignments": [ + 193 + ], + "declarations": [ + { + "constant": false, + "id": 193, + "mutability": "mutable", + "name": "end", + "nameLocation": "3330:3:0", + "nodeType": "VariableDeclaration", + "scope": 312, + "src": "3322:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 192, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3322:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 197, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 194, + "name": "_count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 177, + "src": "3336:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3345:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3336:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3322:24:0" + }, + { + "assignments": [ + 199 + ], + "declarations": [ + { + "constant": false, + "id": 199, + "mutability": "mutable", + "name": "_time", + "nameLocation": "3368:5:0", + "nodeType": "VariableDeclaration", + "scope": 312, + "src": "3360:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 198, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3360:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 200, + "nodeType": "VariableDeclarationStatement", + "src": "3360:13:0" + }, + { + "expression": { + "id": 206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 201, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "3453:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 203, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 167, + "src": "3491:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 204, + "name": "start", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 189, + "src": "3501:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 202, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "3461:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3461:46:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3453:54:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 207, + "nodeType": "ExpressionStatement", + "src": "3453:54:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 208, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "3525:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 209, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 169, + "src": "3534:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3525:19:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 215, + "nodeType": "IfStatement", + "src": "3521:42:0", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 211, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3554:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 212, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3561:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 213, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3553:10:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 175, + "id": 214, + "nodeType": "Return", + "src": "3546:17:0" + } + }, + { + "expression": { + "id": 221, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 216, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "3577:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 218, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 167, + "src": "3615:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 219, + "name": "end", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 193, + "src": "3625:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 217, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "3585:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3585:44:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3577:52:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 222, + "nodeType": "ExpressionStatement", + "src": "3577:52:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 223, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "3647:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 224, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 169, + "src": "3655:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3647:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 230, + "nodeType": "IfStatement", + "src": "3643:42:0", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 226, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3675:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 227, + "name": "end", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 193, + "src": "3681:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 228, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3674:11:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 175, + "id": 229, + "nodeType": "Return", + "src": "3667:18:0" + } + }, + { + "body": { + "id": 310, + "nodeType": "Block", + "src": "3788:1337:0", + "statements": [ + { + "expression": { + "id": 243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 232, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "3806:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 240, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 233, + "name": "end", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 193, + "src": "3816:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 234, + "name": "start", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 189, + "src": "3822:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3816:11:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 236, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3815:13:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "32", + "id": 237, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3831:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "3815:17:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 239, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3835:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3815:21:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 241, + "name": "start", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 189, + "src": "3839:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3815:29:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3806:38:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 244, + "nodeType": "ExpressionStatement", + "src": "3806:38:0" + }, + { + "expression": { + "id": 250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 245, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "3862:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 247, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 167, + "src": "3900:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 248, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "3910:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 246, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "3870:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3870:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3862:55:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 251, + "nodeType": "ExpressionStatement", + "src": "3862:55:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 252, + "name": "_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "3939:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 253, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 169, + "src": "3947:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3939:18:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 308, + "nodeType": "Block", + "src": "4496:491:0", + "statements": [ + { + "assignments": [ + 282 + ], + "declarations": [ + { + "constant": false, + "id": 282, + "mutability": "mutable", + "name": "_prevTime", + "nameLocation": "4526:9:0", + "nodeType": "VariableDeclaration", + "scope": 308, + "src": "4518:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 281, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4518:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 289, + "initialValue": { + "arguments": [ + { + "id": 284, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 167, + "src": "4593:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 285, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "4627:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4636:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4627:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 283, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "4538:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4538:121:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4518:141:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 290, + "name": "_prevTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 282, + "src": "4685:9:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 291, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 169, + "src": "4697:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4685:22:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 306, + "nodeType": "Block", + "src": "4837:132:0", + "statements": [ + { + "expression": { + "id": 304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 300, + "name": "end", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 193, + "src": "4930:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 303, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 301, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "4936:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 302, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4945:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4936:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4930:16:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 305, + "nodeType": "ExpressionStatement", + "src": "4930:16:0" + } + ] + }, + "id": 307, + "nodeType": "IfStatement", + "src": "4681:288:0", + "trueBody": { + "id": 299, + "nodeType": "Block", + "src": "4709:122:0", + "statements": [ + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 293, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4791:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 294, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "4797:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4806:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4797:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 297, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4790:18:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 175, + "id": 298, + "nodeType": "Return", + "src": "4783:25:0" + } + ] + } + } + ] + }, + "id": 309, + "nodeType": "IfStatement", + "src": "3935:1052:0", + "trueBody": { + "id": 280, + "nodeType": "Block", + "src": "3959:531:0", + "statements": [ + { + "assignments": [ + 256 + ], + "declarations": [ + { + "constant": false, + "id": 256, + "mutability": "mutable", + "name": "_nextTime", + "nameLocation": "4036:9:0", + "nodeType": "VariableDeclaration", + "scope": 280, + "src": "4028:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 255, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4028:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 263, + "initialValue": { + "arguments": [ + { + "id": 258, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 167, + "src": "4103:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 259, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "4137:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4146:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4137:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 257, + "name": "getTimestampbyQueryIdandIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "4048:29:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view returns (uint256)" + } + }, + "id": 262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4048:121:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4028:141:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 264, + "name": "_nextTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 256, + "src": "4195:9:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 265, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 169, + "src": "4208:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4195:23:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 278, + "nodeType": "Block", + "src": "4339:133:0", + "statements": [ + { + "expression": { + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 272, + "name": "start", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 189, + "src": "4431:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 273, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "4439:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4448:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4439:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4431:18:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 277, + "nodeType": "ExpressionStatement", + "src": "4431:18:0" + } + ] + }, + "id": 279, + "nodeType": "IfStatement", + "src": "4191:281:0", + "trueBody": { + "id": 271, + "nodeType": "Block", + "src": "4220:113:0", + "statements": [ + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 267, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4297:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 268, + "name": "middle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "4303:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 269, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4296:14:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 175, + "id": 270, + "nodeType": "Return", + "src": "4289:21:0" + } + ] + } + } + ] + } + } + ] + }, + "condition": { + "hexValue": "74727565", + "id": 231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3782:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "id": 311, + "nodeType": "WhileStatement", + "src": "3775:1350:0" + } + ] + } + }, + { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5152:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5159:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 316, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5151:10:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 175, + "id": 317, + "nodeType": "Return", + "src": "5144:17:0" + } + ] + }, + "documentation": { + "id": 165, + "nodeType": "StructuredDocumentation", + "src": "2582:382:0", + "text": " @dev Retrieves latest array index of data before the specified timestamp for the queryId\n @param _queryId is the queryId to look up the index for\n @param _timestamp is the timestamp before which to search for the latest index\n @return _found whether the index was found\n @return _index the latest index found before the specified timestamp" + }, + "functionSelector": "29449085", + "id": 319, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getIndexForDataBefore", + "nameLocation": "3022:21:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 167, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "3052:8:0", + "nodeType": "VariableDeclaration", + "scope": 319, + "src": "3044:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 166, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3044:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 169, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "3070:10:0", + "nodeType": "VariableDeclaration", + "scope": 319, + "src": "3062:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 168, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3062:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3043:38:0" + }, + "returnParameters": { + "id": 175, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 172, + "mutability": "mutable", + "name": "_found", + "nameLocation": "3132:6:0", + "nodeType": "VariableDeclaration", + "scope": 319, + "src": "3127:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 171, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3127:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 174, + "mutability": "mutable", + "name": "_index", + "nameLocation": "3148:6:0", + "nodeType": "VariableDeclaration", + "scope": 319, + "src": "3140:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 173, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3140:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3126:29:0" + }, + "scope": 493, + "src": "3013:2155:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 351, + "nodeType": "Block", + "src": "5501:373:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 337, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 327, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "5569:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", + "id": 329, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5587:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 328, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "5579:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5579:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "5569:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 332, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "5646:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", + "id": 334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5664:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 333, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "5656:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5656:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "5646:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5569:138:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 349, + "nodeType": "Block", + "src": "5794:74:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 346, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 322, + "src": "5848:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 344, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "5815:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getNewValueCountbyQueryId", + "nodeType": "MemberAccess", + "referencedDeclaration": 811, + "src": "5815:32:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_uint256_$", + "typeString": "function (bytes32) view external returns (uint256)" + } + }, + "id": 347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5815:42:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 326, + "id": 348, + "nodeType": "Return", + "src": "5808:49:0" + } + ] + }, + "id": 350, + "nodeType": "IfStatement", + "src": "5552:316:0", + "trueBody": { + "id": 343, + "nodeType": "Block", + "src": "5718:70:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 340, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 322, + "src": "5768:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 338, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "5739:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getTimestampCountById", + "nodeType": "MemberAccess", + "referencedDeclaration": 1133, + "src": "5739:28:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_uint256_$", + "typeString": "function (bytes32) view external returns (uint256)" + } + }, + "id": 341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5739:38:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 326, + "id": 342, + "nodeType": "Return", + "src": "5732:45:0" + } + ] + } + } + ] + }, + "documentation": { + "id": 320, + "nodeType": "StructuredDocumentation", + "src": "5174:211:0", + "text": " @dev Counts the number of values that have been submitted for the queryId\n @param _queryId the id to look up\n @return uint256 count of the number of values received for the queryId" + }, + "functionSelector": "77b03e0d", + "id": 352, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getNewValueCountbyQueryId", + "nameLocation": "5399:25:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 323, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 322, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5433:8:0", + "nodeType": "VariableDeclaration", + "scope": 352, + "src": "5425:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 321, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5425:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5424:18:0" + }, + "returnParameters": { + "id": 326, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 325, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 352, + "src": "5488:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 324, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5488:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5487:9:0" + }, + "scope": 493, + "src": "5390:484:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 387, + "nodeType": "Block", + "src": "6239:397:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 361, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "6307:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", + "id": 363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6325:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 362, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "6317:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 364, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6317:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "6307:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 366, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "6384:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", + "id": 368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6402:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 367, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "6394:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 369, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6394:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "6384:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6307:138:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 385, + "nodeType": "Block", + "src": "6544:86:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 381, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 354, + "src": "6602:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 382, + "name": "_index", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 356, + "src": "6612:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 379, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "6565:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getTimestampbyQueryIdandIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 820, + "src": "6565:36:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view external returns (uint256)" + } + }, + "id": 383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6565:54:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 360, + "id": 384, + "nodeType": "Return", + "src": "6558:61:0" + } + ] + }, + "id": 386, + "nodeType": "IfStatement", + "src": "6290:340:0", + "trueBody": { + "id": 378, + "nodeType": "Block", + "src": "6456:82:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 374, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 354, + "src": "6510:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 375, + "name": "_index", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 356, + "src": "6520:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 372, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "6477:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getReportTimestampByIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 1016, + "src": "6477:32:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (bytes32,uint256) view external returns (uint256)" + } + }, + "id": 376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6477:50:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 360, + "id": 377, + "nodeType": "Return", + "src": "6470:57:0" + } + ] + } + } + ] + }, + "functionSelector": "ce5e11bf", + "id": 388, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getTimestampbyQueryIdandIndex", + "nameLocation": "6117:29:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 357, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 354, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6155:8:0", + "nodeType": "VariableDeclaration", + "scope": 388, + "src": "6147:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 353, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6147:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 356, + "mutability": "mutable", + "name": "_index", + "nameLocation": "6173:6:0", + "nodeType": "VariableDeclaration", + "scope": 388, + "src": "6165:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 355, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6165:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6146:34:0" + }, + "returnParameters": { + "id": 360, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 359, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 388, + "src": "6226:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6226:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6225:9:0" + }, + "scope": 493, + "src": "6108:528:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 454, + "nodeType": "Block", + "src": "7043:833:0", + "statements": [ + { + "assignments": [ + 400 + ], + "declarations": [ + { + "constant": false, + "id": 400, + "mutability": "mutable", + "name": "_governance", + "nameLocation": "7061:11:0", + "nodeType": "VariableDeclaration", + "scope": 454, + "src": "7053:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "typeName": { + "id": 399, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 398, + "name": "ITellor", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1275, + "src": "7053:7:0" + }, + "referencedDeclaration": 1275, + "src": "7053:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "visibility": "internal" + } + ], + "id": 401, + "nodeType": "VariableDeclarationStatement", + "src": "7053:19:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 402, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "7140:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", + "id": 404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7158:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 403, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "7150:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7150:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "7140:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 407, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "7217:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", + "id": 409, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7235:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 408, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "7227:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 410, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7227:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "7217:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7140:138:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 438, + "nodeType": "Block", + "src": "7615:67:0", + "statements": [ + { + "expression": { + "id": 436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 430, + "name": "_governance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 400, + "src": "7629:11:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 432, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "7651:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "governance", + "nodeType": "MemberAccess", + "referencedDeclaration": 887, + "src": "7651:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7651:19:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 431, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "7643:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7643:28:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "7629:42:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 437, + "nodeType": "ExpressionStatement", + "src": "7629:42:0" + } + ] + }, + "id": 439, + "nodeType": "IfStatement", + "src": "7123:559:0", + "trueBody": { + "id": 429, + "nodeType": "Block", + "src": "7289:320:0", + "statements": [ + { + "assignments": [ + 415 + ], + "declarations": [ + { + "constant": false, + "id": 415, + "mutability": "mutable", + "name": "_newTellor", + "nameLocation": "7311:10:0", + "nodeType": "VariableDeclaration", + "scope": 429, + "src": "7303:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "typeName": { + "id": 414, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 413, + "name": "ITellor", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1275, + "src": "7303:7:0" + }, + "referencedDeclaration": 1275, + "src": "7303:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "visibility": "internal" + } + ], + "id": 419, + "initialValue": { + "arguments": [ + { + "hexValue": "307838386446353932463865623544374264333862466546376445623066426330326366333737386130", + "id": 417, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7349:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x88dF592F8eb5D7Bd38bFeF7dEb0fBc02cf3778a0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 416, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "7324:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 418, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7324:81:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7303:102:0" + }, + { + "expression": { + "id": 427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 420, + "name": "_governance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 400, + "src": "7419:11:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "307865666131396261613836343034396635303439313039333538306335343333653937653864356534316638646231613631313038623466613434636163643933", + "id": 424, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7500:66:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", + "typeString": "int_const 1083...(70 digits omitted)...8627" + }, + "value": "0xefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd93" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_108388307556842966652266132454796974122197382706713495380241864631506845748627_by_1", + "typeString": "int_const 1083...(70 digits omitted)...8627" + } + ], + "expression": { + "id": 422, + "name": "_newTellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 415, + "src": "7458:10:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "addresses", + "nodeType": "MemberAccess", + "referencedDeclaration": 502, + "src": "7458:20:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32) view external returns (address)" + } + }, + "id": 425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7458:126:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 421, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "7433:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7433:165:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "7419:179:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 428, + "nodeType": "ExpressionStatement", + "src": "7419:179:0" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 445, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 391, + "src": "7801:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 446, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 393, + "src": "7811:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 443, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7784:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 444, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "7784:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7784:38:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 442, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7774:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7774:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 440, + "name": "_governance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 400, + "src": "7710:11:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getVoteRounds", + "nodeType": "MemberAccess", + "referencedDeclaration": 947, + "src": "7710:42:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (bytes32) view external returns (uint256[] memory)" + } + }, + "id": 449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7710:131:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7710:155:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7868:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7710:159:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 397, + "id": 453, + "nodeType": "Return", + "src": "7691:178:0" + } + ] + }, + "documentation": { + "id": 389, + "nodeType": "StructuredDocumentation", + "src": "6642:282:0", + "text": " @dev Determines whether a value with a given queryId and timestamp has been disputed\n @param _queryId is the value id to look up\n @param _timestamp is the timestamp of the value to look up\n @return bool true if queryId/timestamp is under dispute" + }, + "functionSelector": "44e87f91", + "id": 455, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isInDispute", + "nameLocation": "6938:11:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 394, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 391, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6958:8:0", + "nodeType": "VariableDeclaration", + "scope": 455, + "src": "6950:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 390, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6950:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 393, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "6976:10:0", + "nodeType": "VariableDeclaration", + "scope": 455, + "src": "6968:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 392, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6968:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6949:38:0" + }, + "returnParameters": { + "id": 397, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 396, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 455, + "src": "7033:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 395, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7033:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7032:6:0" + }, + "scope": 493, + "src": "6929:947:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 491, + "nodeType": "Block", + "src": "8236:382:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 465, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "8304:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307831383433316664383861644631333865386239373941373234366562353845413731323665613136", + "id": 467, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8322:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x18431fd88adF138e8b979A7246eb58EA7126ea16" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 466, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "8314:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 468, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8314:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "8304:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + }, + "id": 474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 470, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "8381:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "307865383231386341436230613534323142433634303965343938643966384343383836393934356561", + "id": 472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8399:42:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0xe8218cACb0a5421BC6409e498d9f8CC8869945ea" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 471, + "name": "ITellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1275, + "src": "8391:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITellor_$1275_$", + "typeString": "type(contract ITellor)" + } + }, + "id": 473, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8391:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "src": "8381:61:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8304:138:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 489, + "nodeType": "Block", + "src": "8539:73:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 485, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 458, + "src": "8580:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 486, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 460, + "src": "8590:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 483, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "8560:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "retrieveData", + "nodeType": "MemberAccess", + "referencedDeclaration": 829, + "src": "8560:19:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,uint256) view external returns (bytes memory)" + } + }, + "id": 487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8560:41:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 464, + "id": 488, + "nodeType": "Return", + "src": "8553:48:0" + } + ] + }, + "id": 490, + "nodeType": "IfStatement", + "src": "8287:325:0", + "trueBody": { + "id": 482, + "nodeType": "Block", + "src": "8453:80:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 478, + "name": "_queryId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 458, + "src": "8501:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 479, + "name": "_timestamp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 460, + "src": "8511:10:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 476, + "name": "tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6, + "src": "8474:6:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITellor_$1275", + "typeString": "contract ITellor" + } + }, + "id": 477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getValueByTimestamp", + "nodeType": "MemberAccess", + "referencedDeclaration": 1025, + "src": "8474:26:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32,uint256) view external returns (bytes memory)" + } + }, + "id": 480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8474:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 464, + "id": 481, + "nodeType": "Return", + "src": "8467:55:0" + } + ] + } + } + ] + }, + "documentation": { + "id": 456, + "nodeType": "StructuredDocumentation", + "src": "7882:226:0", + "text": " @dev Retrieve value from oracle based on queryId/timestamp\n @param _queryId being requested\n @param _timestamp to retrieve data/value from\n @return bytes value for query/timestamp submitted" + }, + "functionSelector": "c5958af9", + "id": 492, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "retrieveData", + "nameLocation": "8122:12:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 461, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 458, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "8143:8:0", + "nodeType": "VariableDeclaration", + "scope": 492, + "src": "8135:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 457, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8135:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 460, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "8161:10:0", + "nodeType": "VariableDeclaration", + "scope": 492, + "src": "8153:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 459, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8153:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8134:38:0" + }, + "returnParameters": { + "id": 464, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 463, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 492, + "src": "8218:12:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 462, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8218:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8217:14:0" + }, + "scope": 493, + "src": "8113:505:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + } + ], + "scope": 494, + "src": "247:8373:0" + } + ], + "src": "32:8589:0" + }, + "id": 0 + }, + "contracts/interface/ITellor.sol": { + "ast": { + "absolutePath": "contracts/interface/ITellor.sol", + "exportedSymbols": { + "ITellor": [ + 1275 + ] + }, + "id": 1276, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 495, + "literals": [ + "solidity", + ">=", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "32:24:1" + }, + { + "abstract": false, + "baseContracts": [], + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 1275, + "linearizedBaseContracts": [ + 1275 + ], + "name": "ITellor", + "nameLocation": "68:7:1", + "nodeType": "ContractDefinition", + "nodes": [ + { + "functionSelector": "699f200f", + "id": 502, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addresses", + "nameLocation": "107:9:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 498, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 497, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 502, + "src": "117:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 496, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "117:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "116:9:1" + }, + "returnParameters": { + "id": 501, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 500, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 502, + "src": "148:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 499, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "148:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "147:9:1" + }, + "scope": 1275, + "src": "98:59:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "b59e14d4", + "id": 509, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "uints", + "nameLocation": "171:5:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 505, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 504, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "177:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 503, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "177:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "176:9:1" + }, + "returnParameters": { + "id": 508, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 507, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "208:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 506, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "208:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "207:9:1" + }, + "scope": 1275, + "src": "162:55:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "42966c68", + "id": 514, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "burn", + "nameLocation": "231:4:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 512, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 511, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "244:7:1", + "nodeType": "VariableDeclaration", + "scope": 514, + "src": "236:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 510, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "236:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "235:17:1" + }, + "returnParameters": { + "id": 513, + "nodeType": "ParameterList", + "parameters": [], + "src": "261:0:1" + }, + "scope": 1275, + "src": "222:40:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "47abd7f1", + "id": 519, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeDeity", + "nameLocation": "276:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 517, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 516, + "mutability": "mutable", + "name": "_newDeity", + "nameLocation": "296:9:1", + "nodeType": "VariableDeclaration", + "scope": 519, + "src": "288:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 515, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "288:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "287:19:1" + }, + "returnParameters": { + "id": 518, + "nodeType": "ParameterList", + "parameters": [], + "src": "315:0:1" + }, + "scope": 1275, + "src": "267:49:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a6f9dae1", + "id": 524, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeOwner", + "nameLocation": "330:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 521, + "mutability": "mutable", + "name": "_newOwner", + "nameLocation": "350:9:1", + "nodeType": "VariableDeclaration", + "scope": 524, + "src": "342:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 520, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "342:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "341:19:1" + }, + "returnParameters": { + "id": 523, + "nodeType": "ParameterList", + "parameters": [], + "src": "369:0:1" + }, + "scope": 1275, + "src": "321:49:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "ae0a8279", + "id": 529, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeTellorContract", + "nameLocation": "384:20:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 527, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 526, + "mutability": "mutable", + "name": "_tContract", + "nameLocation": "413:10:1", + "nodeType": "VariableDeclaration", + "scope": 529, + "src": "405:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 525, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "405:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "404:20:1" + }, + "returnParameters": { + "id": 528, + "nodeType": "ParameterList", + "parameters": [], + "src": "433:0:1" + }, + "scope": 1275, + "src": "375:59:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "3c46a185", + "id": 534, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeControllerContract", + "nameLocation": "448:24:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 532, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 531, + "mutability": "mutable", + "name": "_newController", + "nameLocation": "481:14:1", + "nodeType": "VariableDeclaration", + "scope": 534, + "src": "473:22:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 530, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "473:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "472:24:1" + }, + "returnParameters": { + "id": 533, + "nodeType": "ParameterList", + "parameters": [], + "src": "505:0:1" + }, + "scope": 1275, + "src": "439:67:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e8ce51d7", + "id": 539, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeGovernanceContract", + "nameLocation": "520:24:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 537, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 536, + "mutability": "mutable", + "name": "_newGovernance", + "nameLocation": "553:14:1", + "nodeType": "VariableDeclaration", + "scope": 539, + "src": "545:22:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 535, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "545:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "544:24:1" + }, + "returnParameters": { + "id": 538, + "nodeType": "ParameterList", + "parameters": [], + "src": "577:0:1" + }, + "scope": 1275, + "src": "511:67:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1cbd3151", + "id": 544, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeOracleContract", + "nameLocation": "592:20:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 542, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 541, + "mutability": "mutable", + "name": "_newOracle", + "nameLocation": "621:10:1", + "nodeType": "VariableDeclaration", + "scope": 544, + "src": "613:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 540, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "613:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "612:20:1" + }, + "returnParameters": { + "id": 543, + "nodeType": "ParameterList", + "parameters": [], + "src": "641:0:1" + }, + "scope": 1275, + "src": "583:59:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "bd87e0c9", + "id": 549, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeTreasuryContract", + "nameLocation": "656:22:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 546, + "mutability": "mutable", + "name": "_newTreasury", + "nameLocation": "687:12:1", + "nodeType": "VariableDeclaration", + "scope": 549, + "src": "679:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 545, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "679:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "678:22:1" + }, + "returnParameters": { + "id": 548, + "nodeType": "ParameterList", + "parameters": [], + "src": "709:0:1" + }, + "scope": 1275, + "src": "647:63:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "740358e6", + "id": 556, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeUint", + "nameLocation": "724:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 554, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 551, + "mutability": "mutable", + "name": "_target", + "nameLocation": "743:7:1", + "nodeType": "VariableDeclaration", + "scope": 556, + "src": "735:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 550, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "735:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 553, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "760:7:1", + "nodeType": "VariableDeclaration", + "scope": 556, + "src": "752:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 552, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "752:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "734:34:1" + }, + "returnParameters": { + "id": 555, + "nodeType": "ParameterList", + "parameters": [], + "src": "777:0:1" + }, + "scope": 1275, + "src": "715:63:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "8fd3ab80", + "id": 559, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "migrate", + "nameLocation": "792:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 557, + "nodeType": "ParameterList", + "parameters": [], + "src": "799:2:1" + }, + "returnParameters": { + "id": 558, + "nodeType": "ParameterList", + "parameters": [], + "src": "810:0:1" + }, + "scope": 1275, + "src": "783:28:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "40c10f19", + "id": 566, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "mint", + "nameLocation": "825:4:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 564, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 561, + "mutability": "mutable", + "name": "_reciever", + "nameLocation": "838:9:1", + "nodeType": "VariableDeclaration", + "scope": 566, + "src": "830:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 560, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "830:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 563, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "857:7:1", + "nodeType": "VariableDeclaration", + "scope": 566, + "src": "849:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 562, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "849:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "829:36:1" + }, + "returnParameters": { + "id": 565, + "nodeType": "ParameterList", + "parameters": [], + "src": "874:0:1" + }, + "scope": 1275, + "src": "816:59:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e1c7392a", + "id": 569, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "init", + "nameLocation": "889:4:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 567, + "nodeType": "ParameterList", + "parameters": [], + "src": "893:2:1" + }, + "returnParameters": { + "id": 568, + "nodeType": "ParameterList", + "parameters": [], + "src": "904:0:1" + }, + "scope": 1275, + "src": "880:25:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "af0b1327", + "id": 594, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAllDisputeVars", + "nameLocation": "919:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 572, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 571, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "945:10:1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "937:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 570, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "937:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "936:20:1" + }, + "returnParameters": { + "id": 593, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 574, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "980:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 573, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "980:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 576, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "988:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 575, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "988:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 578, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "993:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 577, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "993:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 580, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "998:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 579, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "998:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 582, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "1003:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 581, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1003:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 584, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "1011:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 583, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1011:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 586, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "1019:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 585, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1019:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 590, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "1027:17:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$9_memory_ptr", + "typeString": "uint256[9]" + }, + "typeName": { + "baseType": { + "id": 587, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1027:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 589, + "length": { + "hexValue": "39", + "id": 588, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1035:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_9_by_1", + "typeString": "int_const 9" + }, + "value": "9" + }, + "nodeType": "ArrayTypeName", + "src": "1027:10:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$9_storage_ptr", + "typeString": "uint256[9]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 592, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 594, + "src": "1045:6:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 591, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1045:6:1", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "979:73:1" + }, + "scope": 1275, + "src": "910:143:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "da379941", + "id": 601, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getDisputeIdByDisputeHash", + "nameLocation": "1067:25:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 597, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 596, + "mutability": "mutable", + "name": "_hash", + "nameLocation": "1101:5:1", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "1093:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 595, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1093:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1092:15:1" + }, + "returnParameters": { + "id": 600, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 599, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "1131:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 598, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1131:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1130:9:1" + }, + "scope": 1275, + "src": "1058:82:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "7f6fd5d9", + "id": 610, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getDisputeUintVars", + "nameLocation": "1154:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 603, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "1181:10:1", + "nodeType": "VariableDeclaration", + "scope": 610, + "src": "1173:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 602, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1173:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 605, + "mutability": "mutable", + "name": "_data", + "nameLocation": "1201:5:1", + "nodeType": "VariableDeclaration", + "scope": 610, + "src": "1193:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 604, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1193:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1172:35:1" + }, + "returnParameters": { + "id": 609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 608, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 610, + "src": "1230:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 607, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1230:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1229:9:1" + }, + "scope": 1275, + "src": "1145:94:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "3180f8df", + "id": 619, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getLastNewValueById", + "nameLocation": "1253:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 613, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 612, + "mutability": "mutable", + "name": "_requestId", + "nameLocation": "1281:10:1", + "nodeType": "VariableDeclaration", + "scope": 619, + "src": "1273:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 611, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1273:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1272:20:1" + }, + "returnParameters": { + "id": 618, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 615, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 619, + "src": "1316:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 614, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1316:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 617, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 619, + "src": "1325:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 616, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1325:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1315:15:1" + }, + "scope": 1275, + "src": "1244:87:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "93fa4915", + "id": 628, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "retrieveData", + "nameLocation": "1345:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 624, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 621, + "mutability": "mutable", + "name": "_requestId", + "nameLocation": "1366:10:1", + "nodeType": "VariableDeclaration", + "scope": 628, + "src": "1358:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 620, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1358:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 623, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "1386:10:1", + "nodeType": "VariableDeclaration", + "scope": 628, + "src": "1378:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 622, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1378:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1357:40:1" + }, + "returnParameters": { + "id": 627, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 626, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 628, + "src": "1421:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 625, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1421:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1420:9:1" + }, + "scope": 1275, + "src": "1336:94:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "46eee1c4", + "id": 635, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getNewValueCountbyRequestId", + "nameLocation": "1444:27:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 631, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 630, + "mutability": "mutable", + "name": "_requestId", + "nameLocation": "1480:10:1", + "nodeType": "VariableDeclaration", + "scope": 635, + "src": "1472:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 629, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1472:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1471:20:1" + }, + "returnParameters": { + "id": 634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 633, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 635, + "src": "1515:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 632, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1515:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1514:9:1" + }, + "scope": 1275, + "src": "1435:89:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "133bee5e", + "id": 642, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAddressVars", + "nameLocation": "1538:14:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 637, + "mutability": "mutable", + "name": "_data", + "nameLocation": "1561:5:1", + "nodeType": "VariableDeclaration", + "scope": 642, + "src": "1553:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 636, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1553:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1552:15:1" + }, + "returnParameters": { + "id": 641, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 640, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 642, + "src": "1591:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 639, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1591:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1590:9:1" + }, + "scope": 1275, + "src": "1529:71:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "612c8f7f", + "id": 649, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getUintVar", + "nameLocation": "1614:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 645, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 644, + "mutability": "mutable", + "name": "_data", + "nameLocation": "1633:5:1", + "nodeType": "VariableDeclaration", + "scope": 649, + "src": "1625:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 643, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1625:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1624:15:1" + }, + "returnParameters": { + "id": 648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 647, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 649, + "src": "1663:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 646, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1663:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1662:9:1" + }, + "scope": 1275, + "src": "1605:67:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "18160ddd", + "id": 654, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "1686:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 650, + "nodeType": "ParameterList", + "parameters": [], + "src": "1697:2:1" + }, + "returnParameters": { + "id": 653, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 652, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 654, + "src": "1723:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 651, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1723:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1722:9:1" + }, + "scope": 1275, + "src": "1677:55:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "06fdde03", + "id": 659, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "1746:4:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 655, + "nodeType": "ParameterList", + "parameters": [], + "src": "1750:2:1" + }, + "returnParameters": { + "id": 658, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 657, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 659, + "src": "1776:13:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 656, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1776:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1775:15:1" + }, + "scope": 1275, + "src": "1737:54:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "95d89b41", + "id": 664, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "symbol", + "nameLocation": "1805:6:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 660, + "nodeType": "ParameterList", + "parameters": [], + "src": "1811:2:1" + }, + "returnParameters": { + "id": 663, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 662, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 664, + "src": "1837:13:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 661, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1837:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1836:15:1" + }, + "scope": 1275, + "src": "1796:56:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "313ce567", + "id": 669, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "1866:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 665, + "nodeType": "ParameterList", + "parameters": [], + "src": "1874:2:1" + }, + "returnParameters": { + "id": 668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 667, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 669, + "src": "1900:5:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 666, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1900:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "1899:7:1" + }, + "scope": 1275, + "src": "1857:50:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "58421ed2", + "id": 676, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isMigrated", + "nameLocation": "1921:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 672, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 671, + "mutability": "mutable", + "name": "_addy", + "nameLocation": "1940:5:1", + "nodeType": "VariableDeclaration", + "scope": 676, + "src": "1932:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 670, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1932:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1931:15:1" + }, + "returnParameters": { + "id": 675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 674, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 676, + "src": "1970:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 673, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1970:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1969:6:1" + }, + "scope": 1275, + "src": "1912:64:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "dd62ed3e", + "id": 685, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "1990:9:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 681, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 678, + "mutability": "mutable", + "name": "_user", + "nameLocation": "2008:5:1", + "nodeType": "VariableDeclaration", + "scope": 685, + "src": "2000:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 677, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2000:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 680, + "mutability": "mutable", + "name": "_spender", + "nameLocation": "2023:8:1", + "nodeType": "VariableDeclaration", + "scope": 685, + "src": "2015:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 679, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2015:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1999:33:1" + }, + "returnParameters": { + "id": 684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 683, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 685, + "src": "2057:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 682, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2057:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2056:9:1" + }, + "scope": 1275, + "src": "1981:85:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "999cf26c", + "id": 694, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowedToTrade", + "nameLocation": "2080:14:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 690, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 687, + "mutability": "mutable", + "name": "_user", + "nameLocation": "2103:5:1", + "nodeType": "VariableDeclaration", + "scope": 694, + "src": "2095:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 686, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2095:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 689, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2118:7:1", + "nodeType": "VariableDeclaration", + "scope": 694, + "src": "2110:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 688, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2110:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2094:32:1" + }, + "returnParameters": { + "id": 693, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 692, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 694, + "src": "2150:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 691, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2150:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2149:6:1" + }, + "scope": 1275, + "src": "2071:85:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "095ea7b3", + "id": 703, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "2170:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 699, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 696, + "mutability": "mutable", + "name": "_spender", + "nameLocation": "2186:8:1", + "nodeType": "VariableDeclaration", + "scope": 703, + "src": "2178:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 695, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2178:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 698, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2204:7:1", + "nodeType": "VariableDeclaration", + "scope": 703, + "src": "2196:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 697, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2196:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2177:35:1" + }, + "returnParameters": { + "id": 702, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 701, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 703, + "src": "2231:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 700, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2231:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2230:6:1" + }, + "scope": 1275, + "src": "2161:76:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "288c9c9d", + "id": 714, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approveAndTransferFrom", + "nameLocation": "2251:22:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 710, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 705, + "mutability": "mutable", + "name": "_from", + "nameLocation": "2282:5:1", + "nodeType": "VariableDeclaration", + "scope": 714, + "src": "2274:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 704, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2274:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 707, + "mutability": "mutable", + "name": "_to", + "nameLocation": "2297:3:1", + "nodeType": "VariableDeclaration", + "scope": 714, + "src": "2289:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 706, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2289:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 709, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2310:7:1", + "nodeType": "VariableDeclaration", + "scope": 714, + "src": "2302:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 708, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2302:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2273:45:1" + }, + "returnParameters": { + "id": 713, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 712, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 714, + "src": "2336:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 711, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2336:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2335:6:1" + }, + "scope": 1275, + "src": "2242:100:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "70a08231", + "id": 721, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "2356:9:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 717, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 716, + "mutability": "mutable", + "name": "_user", + "nameLocation": "2374:5:1", + "nodeType": "VariableDeclaration", + "scope": 721, + "src": "2366:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 715, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2366:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2365:15:1" + }, + "returnParameters": { + "id": 720, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 719, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 721, + "src": "2404:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 718, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2404:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2403:9:1" + }, + "scope": 1275, + "src": "2347:66:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "4ee2cd7e", + "id": 730, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOfAt", + "nameLocation": "2427:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 726, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 723, + "mutability": "mutable", + "name": "_user", + "nameLocation": "2447:5:1", + "nodeType": "VariableDeclaration", + "scope": 730, + "src": "2439:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 722, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2439:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 725, + "mutability": "mutable", + "name": "_blockNumber", + "nameLocation": "2462:12:1", + "nodeType": "VariableDeclaration", + "scope": 730, + "src": "2454:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 724, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2454:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2438:37:1" + }, + "returnParameters": { + "id": 729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 728, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 730, + "src": "2498:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 727, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2498:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2497:9:1" + }, + "scope": 1275, + "src": "2418:89:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a9059cbb", + "id": 739, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "2521:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 735, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 732, + "mutability": "mutable", + "name": "_to", + "nameLocation": "2538:3:1", + "nodeType": "VariableDeclaration", + "scope": 739, + "src": "2530:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 731, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2530:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 734, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2551:7:1", + "nodeType": "VariableDeclaration", + "scope": 739, + "src": "2543:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 733, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2543:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2529:30:1" + }, + "returnParameters": { + "id": 738, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 737, + "mutability": "mutable", + "name": "success", + "nameLocation": "2582:7:1", + "nodeType": "VariableDeclaration", + "scope": 739, + "src": "2577:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 736, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2577:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2576:14:1" + }, + "scope": 1275, + "src": "2512:79:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "23b872dd", + "id": 750, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "2605:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 746, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 741, + "mutability": "mutable", + "name": "_from", + "nameLocation": "2626:5:1", + "nodeType": "VariableDeclaration", + "scope": 750, + "src": "2618:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 740, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2618:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 743, + "mutability": "mutable", + "name": "_to", + "nameLocation": "2640:3:1", + "nodeType": "VariableDeclaration", + "scope": 750, + "src": "2632:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 742, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2632:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 745, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2652:7:1", + "nodeType": "VariableDeclaration", + "scope": 750, + "src": "2644:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 744, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2644:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2617:43:1" + }, + "returnParameters": { + "id": 749, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 748, + "mutability": "mutable", + "name": "success", + "nameLocation": "2684:7:1", + "nodeType": "VariableDeclaration", + "scope": 750, + "src": "2679:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 747, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2679:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2678:14:1" + }, + "scope": 1275, + "src": "2596:98:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0d2d76a2", + "id": 753, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "depositStake", + "nameLocation": "2708:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 751, + "nodeType": "ParameterList", + "parameters": [], + "src": "2720:2:1" + }, + "returnParameters": { + "id": 752, + "nodeType": "ParameterList", + "parameters": [], + "src": "2731:0:1" + }, + "scope": 1275, + "src": "2699:33:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "28449c3a", + "id": 756, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "requestStakingWithdraw", + "nameLocation": "2746:22:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 754, + "nodeType": "ParameterList", + "parameters": [], + "src": "2768:2:1" + }, + "returnParameters": { + "id": 755, + "nodeType": "ParameterList", + "parameters": [], + "src": "2779:0:1" + }, + "scope": 1275, + "src": "2737:43:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "bed9d861", + "id": 759, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "withdrawStake", + "nameLocation": "2794:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 757, + "nodeType": "ParameterList", + "parameters": [], + "src": "2807:2:1" + }, + "returnParameters": { + "id": 758, + "nodeType": "ParameterList", + "parameters": [], + "src": "2818:0:1" + }, + "scope": 1275, + "src": "2785:34:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a1332c5c", + "id": 766, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeStakingStatus", + "nameLocation": "2833:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 764, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 761, + "mutability": "mutable", + "name": "_reporter", + "nameLocation": "2861:9:1", + "nodeType": "VariableDeclaration", + "scope": 766, + "src": "2853:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 760, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2853:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 763, + "mutability": "mutable", + "name": "_status", + "nameLocation": "2877:7:1", + "nodeType": "VariableDeclaration", + "scope": 766, + "src": "2872:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 762, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2872:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2852:33:1" + }, + "returnParameters": { + "id": 765, + "nodeType": "ParameterList", + "parameters": [], + "src": "2894:0:1" + }, + "scope": 1275, + "src": "2824:71:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "4dfc2a34", + "id": 773, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "slashReporter", + "nameLocation": "2909:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 771, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 768, + "mutability": "mutable", + "name": "_reporter", + "nameLocation": "2931:9:1", + "nodeType": "VariableDeclaration", + "scope": 773, + "src": "2923:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 767, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2923:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 770, + "mutability": "mutable", + "name": "_disputer", + "nameLocation": "2950:9:1", + "nodeType": "VariableDeclaration", + "scope": 773, + "src": "2942:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 769, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2942:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2922:38:1" + }, + "returnParameters": { + "id": 772, + "nodeType": "ParameterList", + "parameters": [], + "src": "2969:0:1" + }, + "scope": 1275, + "src": "2900:70:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "733bdef0", + "id": 782, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getStakerInfo", + "nameLocation": "2984:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 776, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 775, + "mutability": "mutable", + "name": "_staker", + "nameLocation": "3006:7:1", + "nodeType": "VariableDeclaration", + "scope": 782, + "src": "2998:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 774, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2998:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2997:17:1" + }, + "returnParameters": { + "id": 781, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 778, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 782, + "src": "3038:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 777, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3038:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 780, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 782, + "src": "3047:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 779, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3047:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3037:18:1" + }, + "scope": 1275, + "src": "2975:81:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "77fbb663", + "id": 791, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTimestampbyRequestIDandIndex", + "nameLocation": "3070:31:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 784, + "mutability": "mutable", + "name": "_requestId", + "nameLocation": "3110:10:1", + "nodeType": "VariableDeclaration", + "scope": 791, + "src": "3102:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 783, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3102:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 786, + "mutability": "mutable", + "name": "_index", + "nameLocation": "3130:6:1", + "nodeType": "VariableDeclaration", + "scope": 791, + "src": "3122:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 785, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3122:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3101:36:1" + }, + "returnParameters": { + "id": 790, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 789, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 791, + "src": "3161:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 788, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3161:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3160:9:1" + }, + "scope": 1275, + "src": "3061:109:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "4049f198", + "id": 804, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getNewCurrentVariables", + "nameLocation": "3184:22:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 792, + "nodeType": "ParameterList", + "parameters": [], + "src": "3206:2:1" + }, + "returnParameters": { + "id": 803, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 794, + "mutability": "mutable", + "name": "_c", + "nameLocation": "3239:2:1", + "nodeType": "VariableDeclaration", + "scope": 804, + "src": "3231:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 793, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3231:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 798, + "mutability": "mutable", + "name": "_r", + "nameLocation": "3260:2:1", + "nodeType": "VariableDeclaration", + "scope": 804, + "src": "3242:20:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$5_memory_ptr", + "typeString": "uint256[5]" + }, + "typeName": { + "baseType": { + "id": 795, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3242:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 797, + "length": { + "hexValue": "35", + "id": 796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3250:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "nodeType": "ArrayTypeName", + "src": "3242:10:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$5_storage_ptr", + "typeString": "uint256[5]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 800, + "mutability": "mutable", + "name": "_d", + "nameLocation": "3271:2:1", + "nodeType": "VariableDeclaration", + "scope": 804, + "src": "3263:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 799, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3263:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 802, + "mutability": "mutable", + "name": "_t", + "nameLocation": "3282:2:1", + "nodeType": "VariableDeclaration", + "scope": 804, + "src": "3274:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 801, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3274:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3230:55:1" + }, + "scope": 1275, + "src": "3175:111:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "77b03e0d", + "id": 811, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getNewValueCountbyQueryId", + "nameLocation": "3300:25:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 807, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 806, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "3334:8:1", + "nodeType": "VariableDeclaration", + "scope": 811, + "src": "3326:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 805, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3326:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3325:18:1" + }, + "returnParameters": { + "id": 810, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 809, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 811, + "src": "3366:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 808, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3366:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3365:9:1" + }, + "scope": 1275, + "src": "3291:84:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "ce5e11bf", + "id": 820, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTimestampbyQueryIdandIndex", + "nameLocation": "3389:29:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 816, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 813, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "3427:8:1", + "nodeType": "VariableDeclaration", + "scope": 820, + "src": "3419:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 812, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3419:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 815, + "mutability": "mutable", + "name": "_index", + "nameLocation": "3445:6:1", + "nodeType": "VariableDeclaration", + "scope": 820, + "src": "3437:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 814, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3437:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3418:34:1" + }, + "returnParameters": { + "id": 819, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 818, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 820, + "src": "3475:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 817, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3475:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3474:9:1" + }, + "scope": 1275, + "src": "3380:104:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c5958af9", + "id": 829, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "retrieveData", + "nameLocation": "3498:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 825, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 822, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "3519:8:1", + "nodeType": "VariableDeclaration", + "scope": 829, + "src": "3511:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 821, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3511:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 824, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "3537:10:1", + "nodeType": "VariableDeclaration", + "scope": 829, + "src": "3529:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 823, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3529:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3510:38:1" + }, + "returnParameters": { + "id": 828, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 827, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 829, + "src": "3571:12:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 826, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3571:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3570:14:1" + }, + "scope": 1275, + "src": "3489:96:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "canonicalName": "ITellor.VoteResult", + "id": 833, + "members": [ + { + "id": 830, + "name": "FAILED", + "nameLocation": "3624:6:1", + "nodeType": "EnumValue", + "src": "3624:6:1" + }, + { + "id": 831, + "name": "PASSED", + "nameLocation": "3631:6:1", + "nodeType": "EnumValue", + "src": "3631:6:1" + }, + { + "id": 832, + "name": "INVALID", + "nameLocation": "3638:7:1", + "nodeType": "EnumValue", + "src": "3638:7:1" + } + ], + "name": "VoteResult", + "nameLocation": "3612:10:1", + "nodeType": "EnumDefinition", + "src": "3607:39:1" + }, + { + "functionSelector": "e48d4b3b", + "id": 840, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setApprovedFunction", + "nameLocation": "3660:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 838, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 835, + "mutability": "mutable", + "name": "_func", + "nameLocation": "3687:5:1", + "nodeType": "VariableDeclaration", + "scope": 840, + "src": "3680:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 834, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "3680:6:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 837, + "mutability": "mutable", + "name": "_val", + "nameLocation": "3699:4:1", + "nodeType": "VariableDeclaration", + "scope": 840, + "src": "3694:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 836, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3694:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3679:25:1" + }, + "returnParameters": { + "id": 839, + "nodeType": "ParameterList", + "parameters": [], + "src": "3713:0:1" + }, + "scope": 1275, + "src": "3651:63:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1f379acc", + "id": 847, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "beginDispute", + "nameLocation": "3728:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 842, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "3749:8:1", + "nodeType": "VariableDeclaration", + "scope": 847, + "src": "3741:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 841, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3741:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 844, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "3766:10:1", + "nodeType": "VariableDeclaration", + "scope": 847, + "src": "3758:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 843, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3758:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3740:37:1" + }, + "returnParameters": { + "id": 846, + "nodeType": "ParameterList", + "parameters": [], + "src": "3786:0:1" + }, + "scope": 1275, + "src": "3719:68:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5c19a95c", + "id": 852, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "delegate", + "nameLocation": "3801:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 849, + "mutability": "mutable", + "name": "_delegate", + "nameLocation": "3818:9:1", + "nodeType": "VariableDeclaration", + "scope": 852, + "src": "3810:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 848, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3810:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3809:19:1" + }, + "returnParameters": { + "id": 851, + "nodeType": "ParameterList", + "parameters": [], + "src": "3837:0:1" + }, + "scope": 1275, + "src": "3792:46:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "b3427a2b", + "id": 861, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "delegateOfAt", + "nameLocation": "3852:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 854, + "mutability": "mutable", + "name": "_user", + "nameLocation": "3873:5:1", + "nodeType": "VariableDeclaration", + "scope": 861, + "src": "3865:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 853, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3865:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 856, + "mutability": "mutable", + "name": "_blockNumber", + "nameLocation": "3888:12:1", + "nodeType": "VariableDeclaration", + "scope": 861, + "src": "3880:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 855, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3880:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3864:37:1" + }, + "returnParameters": { + "id": 860, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 859, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 861, + "src": "3925:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 858, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3925:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3924:9:1" + }, + "scope": 1275, + "src": "3843:91:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "f98a4eca", + "id": 866, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "executeVote", + "nameLocation": "3948:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 863, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "3968:10:1", + "nodeType": "VariableDeclaration", + "scope": 866, + "src": "3960:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 862, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3960:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3959:20:1" + }, + "returnParameters": { + "id": 865, + "nodeType": "ParameterList", + "parameters": [], + "src": "3988:0:1" + }, + "scope": 1275, + "src": "3939:50:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0b5e95c3", + "id": 877, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "proposeVote", + "nameLocation": "4003:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 868, + "mutability": "mutable", + "name": "_contract", + "nameLocation": "4023:9:1", + "nodeType": "VariableDeclaration", + "scope": 877, + "src": "4015:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 867, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4015:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 870, + "mutability": "mutable", + "name": "_function", + "nameLocation": "4040:9:1", + "nodeType": "VariableDeclaration", + "scope": 877, + "src": "4033:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 869, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "4033:6:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 872, + "mutability": "mutable", + "name": "_data", + "nameLocation": "4066:5:1", + "nodeType": "VariableDeclaration", + "scope": 877, + "src": "4051:20:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 871, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4051:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 874, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "4081:10:1", + "nodeType": "VariableDeclaration", + "scope": 877, + "src": "4073:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4073:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4014:78:1" + }, + "returnParameters": { + "id": 876, + "nodeType": "ParameterList", + "parameters": [], + "src": "4101:0:1" + }, + "scope": 1275, + "src": "3994:108:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "4d318b0e", + "id": 882, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tallyVotes", + "nameLocation": "4116:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 880, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 879, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "4135:10:1", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "4127:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 878, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4127:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4126:20:1" + }, + "returnParameters": { + "id": 881, + "nodeType": "ParameterList", + "parameters": [], + "src": "4155:0:1" + }, + "scope": 1275, + "src": "4107:49:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5aa6e675", + "id": 887, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "governance", + "nameLocation": "4170:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 883, + "nodeType": "ParameterList", + "parameters": [], + "src": "4180:2:1" + }, + "returnParameters": { + "id": 886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 885, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 887, + "src": "4206:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 884, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4206:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4205:9:1" + }, + "scope": 1275, + "src": "4161:54:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "90e5b235", + "id": 890, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "updateMinDisputeFee", + "nameLocation": "4229:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 888, + "nodeType": "ParameterList", + "parameters": [], + "src": "4248:2:1" + }, + "returnParameters": { + "id": 889, + "nodeType": "ParameterList", + "parameters": [], + "src": "4259:0:1" + }, + "scope": 1275, + "src": "4220:40:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "fc735e99", + "id": 895, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "verify", + "nameLocation": "4274:6:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 891, + "nodeType": "ParameterList", + "parameters": [], + "src": "4280:2:1" + }, + "returnParameters": { + "id": 894, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 893, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 895, + "src": "4305:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 892, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4305:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4304:6:1" + }, + "scope": 1275, + "src": "4265:46:1", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "df133bca", + "id": 904, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "vote", + "nameLocation": "4325:4:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 902, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 897, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "4338:10:1", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "4330:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 896, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4330:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 899, + "mutability": "mutable", + "name": "_supports", + "nameLocation": "4355:9:1", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "4350:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 898, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4350:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 901, + "mutability": "mutable", + "name": "_invalidQuery", + "nameLocation": "4371:13:1", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "4366:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 900, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4366:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4329:56:1" + }, + "returnParameters": { + "id": 903, + "nodeType": "ParameterList", + "parameters": [], + "src": "4394:0:1" + }, + "scope": 1275, + "src": "4316:79:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e5d91314", + "id": 916, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "voteFor", + "nameLocation": "4409:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 914, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 907, + "mutability": "mutable", + "name": "_addys", + "nameLocation": "4436:6:1", + "nodeType": "VariableDeclaration", + "scope": 916, + "src": "4417:25:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 905, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4417:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 906, + "nodeType": "ArrayTypeName", + "src": "4417:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 909, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "4451:10:1", + "nodeType": "VariableDeclaration", + "scope": 916, + "src": "4443:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 908, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4443:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 911, + "mutability": "mutable", + "name": "_supports", + "nameLocation": "4468:9:1", + "nodeType": "VariableDeclaration", + "scope": 916, + "src": "4463:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 910, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4463:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 913, + "mutability": "mutable", + "name": "_invalidQuery", + "nameLocation": "4484:13:1", + "nodeType": "VariableDeclaration", + "scope": 916, + "src": "4479:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 912, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4479:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4416:82:1" + }, + "returnParameters": { + "id": 915, + "nodeType": "ParameterList", + "parameters": [], + "src": "4507:0:1" + }, + "scope": 1275, + "src": "4400:108:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "10c67e1c", + "id": 925, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getDelegateInfo", + "nameLocation": "4522:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 919, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 918, + "mutability": "mutable", + "name": "_holder", + "nameLocation": "4546:7:1", + "nodeType": "VariableDeclaration", + "scope": 925, + "src": "4538:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 917, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4538:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4537:17:1" + }, + "returnParameters": { + "id": 924, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 921, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 925, + "src": "4577:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 920, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4577:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 923, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 925, + "src": "4585:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 922, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4585:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4576:14:1" + }, + "scope": 1275, + "src": "4513:78:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "2d2506a9", + "id": 932, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isFunctionApproved", + "nameLocation": "4605:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 927, + "mutability": "mutable", + "name": "_func", + "nameLocation": "4631:5:1", + "nodeType": "VariableDeclaration", + "scope": 932, + "src": "4624:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 926, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "4624:6:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "4623:14:1" + }, + "returnParameters": { + "id": 931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 930, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 932, + "src": "4660:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 929, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4660:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4659:6:1" + }, + "scope": 1275, + "src": "4596:70:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "fd3171b2", + "id": 939, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isApprovedGovernanceContract", + "nameLocation": "4680:28:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 935, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 934, + "mutability": "mutable", + "name": "_contract", + "nameLocation": "4717:9:1", + "nodeType": "VariableDeclaration", + "scope": 939, + "src": "4709:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 933, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4709:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4708:19:1" + }, + "returnParameters": { + "id": 938, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 937, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 939, + "src": "4746:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 936, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4746:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4745:6:1" + }, + "scope": 1275, + "src": "4671:81:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "248638e5", + "id": 947, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getVoteRounds", + "nameLocation": "4766:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 942, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 941, + "mutability": "mutable", + "name": "_hash", + "nameLocation": "4788:5:1", + "nodeType": "VariableDeclaration", + "scope": 947, + "src": "4780:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 940, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4780:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4779:15:1" + }, + "returnParameters": { + "id": 946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 945, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 947, + "src": "4817:16:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 943, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4817:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 944, + "nodeType": "ArrayTypeName", + "src": "4817:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "4816:18:1" + }, + "scope": 1275, + "src": "4757:78:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e7b3387c", + "id": 952, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getVoteCount", + "nameLocation": "4849:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 948, + "nodeType": "ParameterList", + "parameters": [], + "src": "4861:2:1" + }, + "returnParameters": { + "id": 951, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 950, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 952, + "src": "4886:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 949, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4886:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4885:9:1" + }, + "scope": 1275, + "src": "4840:55:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "8d824273", + "id": 978, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getVoteInfo", + "nameLocation": "4909:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 955, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 954, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "4929:10:1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "4921:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 953, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4921:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4920:20:1" + }, + "returnParameters": { + "id": 977, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 957, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "4963:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 956, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4963:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 961, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "4971:17:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$9_memory_ptr", + "typeString": "uint256[9]" + }, + "typeName": { + "baseType": { + "id": 958, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4971:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 960, + "length": { + "hexValue": "39", + "id": 959, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4979:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_9_by_1", + "typeString": "int_const 9" + }, + "value": "9" + }, + "nodeType": "ArrayTypeName", + "src": "4971:10:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$9_storage_ptr", + "typeString": "uint256[9]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 965, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "4989:14:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bool_$2_memory_ptr", + "typeString": "bool[2]" + }, + "typeName": { + "baseType": { + "id": 962, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4989:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 964, + "length": { + "hexValue": "32", + "id": 963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4994:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "ArrayTypeName", + "src": "4989:7:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bool_$2_storage_ptr", + "typeString": "bool[2]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 968, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "5004:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_VoteResult_$833", + "typeString": "enum ITellor.VoteResult" + }, + "typeName": { + "id": 967, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 966, + "name": "VoteResult", + "nodeType": "IdentifierPath", + "referencedDeclaration": 833, + "src": "5004:10:1" + }, + "referencedDeclaration": 833, + "src": "5004:10:1", + "typeDescriptions": { + "typeIdentifier": "t_enum$_VoteResult_$833", + "typeString": "enum ITellor.VoteResult" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 970, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "5015:12:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 969, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5015:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 972, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "5028:6:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 971, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "5028:6:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 976, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 978, + "src": "5035:17:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$2_memory_ptr", + "typeString": "address[2]" + }, + "typeName": { + "baseType": { + "id": 973, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5035:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 975, + "length": { + "hexValue": "32", + "id": 974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5043:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "ArrayTypeName", + "src": "5035:10:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$2_storage_ptr", + "typeString": "address[2]" + } + }, + "visibility": "internal" + } + ], + "src": "4962:91:1" + }, + "scope": 1275, + "src": "4900:154:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "6169c308", + "id": 991, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getDisputeInfo", + "nameLocation": "5068:14:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 981, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 980, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "5091:10:1", + "nodeType": "VariableDeclaration", + "scope": 991, + "src": "5083:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 979, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5083:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5082:20:1" + }, + "returnParameters": { + "id": 990, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 983, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 991, + "src": "5125:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5125:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 985, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 991, + "src": "5133:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 984, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5133:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 987, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 991, + "src": "5141:12:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 986, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5141:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 989, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 991, + "src": "5155:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 988, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5155:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5124:39:1" + }, + "scope": 1275, + "src": "5059:105:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0e1596ef", + "id": 998, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getOpenDisputesOnId", + "nameLocation": "5178:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 994, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 993, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5206:8:1", + "nodeType": "VariableDeclaration", + "scope": 998, + "src": "5198:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 992, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5198:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5197:18:1" + }, + "returnParameters": { + "id": 997, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 996, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 998, + "src": "5238:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 995, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5238:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5237:9:1" + }, + "scope": 1275, + "src": "5169:78:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a7c438bc", + "id": 1007, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "didVote", + "nameLocation": "5261:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1003, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1000, + "mutability": "mutable", + "name": "_disputeId", + "nameLocation": "5277:10:1", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "5269:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 999, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5269:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1002, + "mutability": "mutable", + "name": "_voter", + "nameLocation": "5297:6:1", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "5289:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1001, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5289:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5268:36:1" + }, + "returnParameters": { + "id": 1006, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1005, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "5327:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1004, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5327:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5326:6:1" + }, + "scope": 1275, + "src": "5252:81:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "7c37b8b4", + "id": 1016, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getReportTimestampByIndex", + "nameLocation": "5360:25:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1012, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1009, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5394:8:1", + "nodeType": "VariableDeclaration", + "scope": 1016, + "src": "5386:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1008, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5386:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1011, + "mutability": "mutable", + "name": "_index", + "nameLocation": "5412:6:1", + "nodeType": "VariableDeclaration", + "scope": 1016, + "src": "5404:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1010, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5404:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5385:34:1" + }, + "returnParameters": { + "id": 1015, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1014, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1016, + "src": "5442:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1013, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5442:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5441:9:1" + }, + "scope": 1275, + "src": "5351:100:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0b2d2b0d", + "id": 1025, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getValueByTimestamp", + "nameLocation": "5465:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1021, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1018, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5493:8:1", + "nodeType": "VariableDeclaration", + "scope": 1025, + "src": "5485:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1017, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5485:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1020, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "5511:10:1", + "nodeType": "VariableDeclaration", + "scope": 1025, + "src": "5503:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1019, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5503:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5484:38:1" + }, + "returnParameters": { + "id": 1024, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1023, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1025, + "src": "5545:12:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1022, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5545:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5544:14:1" + }, + "scope": 1275, + "src": "5456:103:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "935408d0", + "id": 1034, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getBlockNumberByTimestamp", + "nameLocation": "5573:25:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1027, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5607:8:1", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "5599:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1026, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5599:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1029, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "5625:10:1", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "5617:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1028, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5617:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5598:38:1" + }, + "returnParameters": { + "id": 1033, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1032, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "5659:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1031, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5659:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5658:9:1" + }, + "scope": 1275, + "src": "5564:104:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "460c33a2", + "id": 1039, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getReportingLock", + "nameLocation": "5682:16:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1035, + "nodeType": "ParameterList", + "parameters": [], + "src": "5698:2:1" + }, + "returnParameters": { + "id": 1038, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1037, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1039, + "src": "5723:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1036, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5723:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5722:9:1" + }, + "scope": 1275, + "src": "5673:59:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "e07c5486", + "id": 1048, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getReporterByTimestamp", + "nameLocation": "5746:22:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1044, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1041, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5777:8:1", + "nodeType": "VariableDeclaration", + "scope": 1048, + "src": "5769:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1040, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5769:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1043, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "5795:10:1", + "nodeType": "VariableDeclaration", + "scope": 1048, + "src": "5787:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1042, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5787:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5768:38:1" + }, + "returnParameters": { + "id": 1047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1046, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1048, + "src": "5829:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1045, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5829:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5828:9:1" + }, + "scope": 1275, + "src": "5737:101:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "3321fc41", + "id": 1053, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "reportingLock", + "nameLocation": "5852:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1049, + "nodeType": "ParameterList", + "parameters": [], + "src": "5865:2:1" + }, + "returnParameters": { + "id": 1052, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1051, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1053, + "src": "5890:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1050, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5890:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5889:9:1" + }, + "scope": 1275, + "src": "5843:56:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5b5edcfc", + "id": 1060, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeValue", + "nameLocation": "5913:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1058, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1055, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "5933:8:1", + "nodeType": "VariableDeclaration", + "scope": 1060, + "src": "5925:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1054, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5925:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1057, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "5951:10:1", + "nodeType": "VariableDeclaration", + "scope": 1060, + "src": "5943:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1056, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5943:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5924:38:1" + }, + "returnParameters": { + "id": 1059, + "nodeType": "ParameterList", + "parameters": [], + "src": "5971:0:1" + }, + "scope": 1275, + "src": "5904:68:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "3878293e", + "id": 1067, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getReportsSubmittedByAddress", + "nameLocation": "5986:28:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1063, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1062, + "mutability": "mutable", + "name": "_reporter", + "nameLocation": "6023:9:1", + "nodeType": "VariableDeclaration", + "scope": 1067, + "src": "6015:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6015:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6014:19:1" + }, + "returnParameters": { + "id": 1066, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1065, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1067, + "src": "6056:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1064, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6056:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6055:9:1" + }, + "scope": 1275, + "src": "5977:88:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "b736ec36", + "id": 1074, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTipsByUser", + "nameLocation": "6079:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1070, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1069, + "mutability": "mutable", + "name": "_user", + "nameLocation": "6101:5:1", + "nodeType": "VariableDeclaration", + "scope": 1074, + "src": "6093:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1068, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6093:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6092:15:1" + }, + "returnParameters": { + "id": 1073, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1072, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1074, + "src": "6130:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1071, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6130:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6129:9:1" + }, + "scope": 1275, + "src": "6070:69:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "ef0234ad", + "id": 1083, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tipQuery", + "nameLocation": "6153:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1081, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1076, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6170:8:1", + "nodeType": "VariableDeclaration", + "scope": 1083, + "src": "6162:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1075, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6162:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1078, + "mutability": "mutable", + "name": "_tip", + "nameLocation": "6188:4:1", + "nodeType": "VariableDeclaration", + "scope": 1083, + "src": "6180:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1077, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6180:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1080, + "mutability": "mutable", + "name": "_queryData", + "nameLocation": "6207:10:1", + "nodeType": "VariableDeclaration", + "scope": 1083, + "src": "6194:23:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1079, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6194:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6161:57:1" + }, + "returnParameters": { + "id": 1082, + "nodeType": "ParameterList", + "parameters": [], + "src": "6227:0:1" + }, + "scope": 1275, + "src": "6144:84:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5eaa9ced", + "id": 1094, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "submitValue", + "nameLocation": "6242:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1092, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1085, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6262:8:1", + "nodeType": "VariableDeclaration", + "scope": 1094, + "src": "6254:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1084, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6254:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1087, + "mutability": "mutable", + "name": "_value", + "nameLocation": "6287:6:1", + "nodeType": "VariableDeclaration", + "scope": 1094, + "src": "6272:21:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1086, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6272:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1089, + "mutability": "mutable", + "name": "_nonce", + "nameLocation": "6303:6:1", + "nodeType": "VariableDeclaration", + "scope": 1094, + "src": "6295:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1088, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6295:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1091, + "mutability": "mutable", + "name": "_queryData", + "nameLocation": "6324:10:1", + "nodeType": "VariableDeclaration", + "scope": 1094, + "src": "6311:23:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1090, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6311:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6253:82:1" + }, + "returnParameters": { + "id": 1093, + "nodeType": "ParameterList", + "parameters": [], + "src": "6344:0:1" + }, + "scope": 1275, + "src": "6233:112:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "df0a6eb7", + "id": 1097, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "burnTips", + "nameLocation": "6359:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1095, + "nodeType": "ParameterList", + "parameters": [], + "src": "6367:2:1" + }, + "returnParameters": { + "id": 1096, + "nodeType": "ParameterList", + "parameters": [], + "src": "6378:0:1" + }, + "scope": 1275, + "src": "6350:29:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5d183cfa", + "id": 1102, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeReportingLock", + "nameLocation": "6393:19:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1099, + "mutability": "mutable", + "name": "_newReportingLock", + "nameLocation": "6421:17:1", + "nodeType": "VariableDeclaration", + "scope": 1102, + "src": "6413:25:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1098, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6413:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6412:27:1" + }, + "returnParameters": { + "id": 1101, + "nodeType": "ParameterList", + "parameters": [], + "src": "6448:0:1" + }, + "scope": 1275, + "src": "6384:65:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "6d53585f", + "id": 1107, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeTimeBasedReward", + "nameLocation": "6463:21:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1105, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1104, + "mutability": "mutable", + "name": "_newTimeBasedReward", + "nameLocation": "6493:19:1", + "nodeType": "VariableDeclaration", + "scope": 1107, + "src": "6485:27:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1103, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6485:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6484:29:1" + }, + "returnParameters": { + "id": 1106, + "nodeType": "ParameterList", + "parameters": [], + "src": "6522:0:1" + }, + "scope": 1275, + "src": "6454:69:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "50005b83", + "id": 1114, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getReporterLastTimestamp", + "nameLocation": "6537:24:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1109, + "mutability": "mutable", + "name": "_reporter", + "nameLocation": "6570:9:1", + "nodeType": "VariableDeclaration", + "scope": 1114, + "src": "6562:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6562:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6561:19:1" + }, + "returnParameters": { + "id": 1113, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1112, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1114, + "src": "6603:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6603:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6602:9:1" + }, + "scope": 1275, + "src": "6528:84:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "ef4c262d", + "id": 1121, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTipsById", + "nameLocation": "6626:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1117, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1116, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6646:8:1", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "6638:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1115, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6638:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "6637:18:1" + }, + "returnParameters": { + "id": 1120, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1119, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "6678:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1118, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6678:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6677:9:1" + }, + "scope": 1275, + "src": "6617:70:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "14d66b9a", + "id": 1126, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTimeBasedReward", + "nameLocation": "6701:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1122, + "nodeType": "ParameterList", + "parameters": [], + "src": "6719:2:1" + }, + "returnParameters": { + "id": 1125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1124, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1126, + "src": "6744:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1123, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6744:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6743:9:1" + }, + "scope": 1275, + "src": "6692:61:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "35e72432", + "id": 1133, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTimestampCountById", + "nameLocation": "6767:21:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1129, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1128, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6797:8:1", + "nodeType": "VariableDeclaration", + "scope": 1133, + "src": "6789:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1127, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6789:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "6788:18:1" + }, + "returnParameters": { + "id": 1132, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1131, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1133, + "src": "6829:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6829:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6828:9:1" + }, + "scope": 1275, + "src": "6758:80:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "9d9b16ed", + "id": 1142, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTimestampIndexByTimestamp", + "nameLocation": "6852:28:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1138, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1135, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6889:8:1", + "nodeType": "VariableDeclaration", + "scope": 1142, + "src": "6881:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1134, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6881:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1137, + "mutability": "mutable", + "name": "_timestamp", + "nameLocation": "6907:10:1", + "nodeType": "VariableDeclaration", + "scope": 1142, + "src": "6899:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1136, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6899:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6880:38:1" + }, + "returnParameters": { + "id": 1141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1140, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1142, + "src": "6941:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1139, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6941:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6940:9:1" + }, + "scope": 1275, + "src": "6843:107:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a1e588a5", + "id": 1151, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getCurrentReward", + "nameLocation": "6964:16:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1145, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1144, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "6989:8:1", + "nodeType": "VariableDeclaration", + "scope": 1151, + "src": "6981:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1143, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6981:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "6980:18:1" + }, + "returnParameters": { + "id": 1150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1147, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1151, + "src": "7021:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1146, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7021:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1149, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1151, + "src": "7030:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1148, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7030:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7020:18:1" + }, + "scope": 1275, + "src": "6955:84:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "adf1639d", + "id": 1158, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getCurrentValue", + "nameLocation": "7053:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1154, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1153, + "mutability": "mutable", + "name": "_queryId", + "nameLocation": "7077:8:1", + "nodeType": "VariableDeclaration", + "scope": 1158, + "src": "7069:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1152, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "7069:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "7068:18:1" + }, + "returnParameters": { + "id": 1157, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1156, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1158, + "src": "7109:12:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1155, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7109:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7108:14:1" + }, + "scope": 1275, + "src": "7044:79:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "c0f95d52", + "id": 1163, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTimeOfLastNewValue", + "nameLocation": "7137:21:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1159, + "nodeType": "ParameterList", + "parameters": [], + "src": "7158:2:1" + }, + "returnParameters": { + "id": 1162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1161, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1163, + "src": "7183:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1160, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7183:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7182:9:1" + }, + "scope": 1275, + "src": "7128:64:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "6274885f", + "id": 1172, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "issueTreasury", + "nameLocation": "7221:13:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1165, + "mutability": "mutable", + "name": "_maxAmount", + "nameLocation": "7243:10:1", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "7235:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1164, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7235:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1167, + "mutability": "mutable", + "name": "_rate", + "nameLocation": "7263:5:1", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "7255:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1166, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7255:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1169, + "mutability": "mutable", + "name": "_duration", + "nameLocation": "7278:9:1", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "7270:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1168, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7270:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7234:54:1" + }, + "returnParameters": { + "id": 1171, + "nodeType": "ParameterList", + "parameters": [], + "src": "7297:0:1" + }, + "scope": 1275, + "src": "7212:86:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "ef362980", + "id": 1179, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payTreasury", + "nameLocation": "7312:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1177, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1174, + "mutability": "mutable", + "name": "_investor", + "nameLocation": "7332:9:1", + "nodeType": "VariableDeclaration", + "scope": 1179, + "src": "7324:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1173, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7324:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1176, + "mutability": "mutable", + "name": "_id", + "nameLocation": "7350:3:1", + "nodeType": "VariableDeclaration", + "scope": 1179, + "src": "7342:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1175, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7342:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7323:31:1" + }, + "returnParameters": { + "id": 1178, + "nodeType": "ParameterList", + "parameters": [], + "src": "7363:0:1" + }, + "scope": 1275, + "src": "7303:61:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "6a64b815", + "id": 1186, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "buyTreasury", + "nameLocation": "7378:11:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1184, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1181, + "mutability": "mutable", + "name": "_id", + "nameLocation": "7398:3:1", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "7390:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1180, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7390:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1183, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "7410:7:1", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "7402:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1182, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7402:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7389:29:1" + }, + "returnParameters": { + "id": 1185, + "nodeType": "ParameterList", + "parameters": [], + "src": "7427:0:1" + }, + "scope": 1275, + "src": "7369:59:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "73342a47", + "id": 1199, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTreasuryDetails", + "nameLocation": "7442:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1188, + "mutability": "mutable", + "name": "_id", + "nameLocation": "7469:3:1", + "nodeType": "VariableDeclaration", + "scope": 1199, + "src": "7461:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1187, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7461:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7460:13:1" + }, + "returnParameters": { + "id": 1198, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1191, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1199, + "src": "7496:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1190, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7496:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1193, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1199, + "src": "7504:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1192, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7504:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1195, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1199, + "src": "7512:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1194, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7512:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1197, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1199, + "src": "7520:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1196, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7520:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7495:33:1" + }, + "scope": 1275, + "src": "7433:96:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "770d458f", + "id": 1206, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTreasuryFundsByUser", + "nameLocation": "7543:22:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1202, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1201, + "mutability": "mutable", + "name": "_user", + "nameLocation": "7574:5:1", + "nodeType": "VariableDeclaration", + "scope": 1206, + "src": "7566:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1200, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7566:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7565:15:1" + }, + "returnParameters": { + "id": 1205, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1204, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1206, + "src": "7603:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1203, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7603:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7602:9:1" + }, + "scope": 1275, + "src": "7534:78:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "ae23fae1", + "id": 1219, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTreasuryAccount", + "nameLocation": "7626:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1211, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1208, + "mutability": "mutable", + "name": "_id", + "nameLocation": "7653:3:1", + "nodeType": "VariableDeclaration", + "scope": 1219, + "src": "7645:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1207, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7645:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1210, + "mutability": "mutable", + "name": "_investor", + "nameLocation": "7666:9:1", + "nodeType": "VariableDeclaration", + "scope": 1219, + "src": "7658:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1209, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7658:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7644:32:1" + }, + "returnParameters": { + "id": 1218, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1213, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1219, + "src": "7699:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1212, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7699:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1215, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1219, + "src": "7707:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1214, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7707:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1217, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1219, + "src": "7715:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1216, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7715:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7698:22:1" + }, + "scope": 1275, + "src": "7617:104:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "8e0918b5", + "id": 1224, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTreasuryCount", + "nameLocation": "7735:16:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1220, + "nodeType": "ParameterList", + "parameters": [], + "src": "7751:2:1" + }, + "returnParameters": { + "id": 1223, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1222, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1224, + "src": "7776:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1221, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7776:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7775:9:1" + }, + "scope": 1275, + "src": "7726:59:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1683ca53", + "id": 1232, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getTreasuryOwners", + "nameLocation": "7799:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1226, + "mutability": "mutable", + "name": "_id", + "nameLocation": "7825:3:1", + "nodeType": "VariableDeclaration", + "scope": 1232, + "src": "7817:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1225, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7817:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7816:13:1" + }, + "returnParameters": { + "id": 1231, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1230, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1232, + "src": "7852:16:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1228, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7852:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1229, + "nodeType": "ArrayTypeName", + "src": "7852:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "7851:18:1" + }, + "scope": 1275, + "src": "7790:80:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "4d90d705", + "id": 1241, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "wasPaid", + "nameLocation": "7884:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1237, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1234, + "mutability": "mutable", + "name": "_id", + "nameLocation": "7900:3:1", + "nodeType": "VariableDeclaration", + "scope": 1241, + "src": "7892:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1233, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7892:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1236, + "mutability": "mutable", + "name": "_investor", + "nameLocation": "7913:9:1", + "nodeType": "VariableDeclaration", + "scope": 1241, + "src": "7905:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1235, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7905:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7891:32:1" + }, + "returnParameters": { + "id": 1240, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1239, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1241, + "src": "7946:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1238, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7946:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7945:6:1" + }, + "scope": 1275, + "src": "7875:77:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "515ec907", + "id": 1248, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "changeAddressVar", + "nameLocation": "7987:16:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1246, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1243, + "mutability": "mutable", + "name": "_id", + "nameLocation": "8012:3:1", + "nodeType": "VariableDeclaration", + "scope": 1248, + "src": "8004:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1242, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8004:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1245, + "mutability": "mutable", + "name": "_addy", + "nameLocation": "8025:5:1", + "nodeType": "VariableDeclaration", + "scope": 1248, + "src": "8017:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1244, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8017:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8003:28:1" + }, + "returnParameters": { + "id": 1247, + "nodeType": "ParameterList", + "parameters": [], + "src": "8040:0:1" + }, + "scope": 1275, + "src": "7978:63:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1c02708d", + "id": 1251, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "killContract", + "nameLocation": "8082:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1249, + "nodeType": "ParameterList", + "parameters": [], + "src": "8094:2:1" + }, + "returnParameters": { + "id": 1250, + "nodeType": "ParameterList", + "parameters": [], + "src": "8105:0:1" + }, + "scope": 1275, + "src": "8073:33:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "0b477573", + "id": 1258, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "migrateFor", + "nameLocation": "8120:10:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1256, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1253, + "mutability": "mutable", + "name": "_destination", + "nameLocation": "8139:12:1", + "nodeType": "VariableDeclaration", + "scope": 1258, + "src": "8131:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1252, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8131:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1255, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "8160:7:1", + "nodeType": "VariableDeclaration", + "scope": 1258, + "src": "8152:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1254, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8152:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8130:38:1" + }, + "returnParameters": { + "id": 1257, + "nodeType": "ParameterList", + "parameters": [], + "src": "8177:0:1" + }, + "scope": 1275, + "src": "8111:67:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "335f8dd4", + "id": 1263, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "rescue51PercentAttack", + "nameLocation": "8192:21:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1261, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1260, + "mutability": "mutable", + "name": "_tokenHolder", + "nameLocation": "8222:12:1", + "nodeType": "VariableDeclaration", + "scope": 1263, + "src": "8214:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1259, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8214:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8213:22:1" + }, + "returnParameters": { + "id": 1262, + "nodeType": "ParameterList", + "parameters": [], + "src": "8244:0:1" + }, + "scope": 1275, + "src": "8183:62:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "7c564a6a", + "id": 1266, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "rescueBrokenDataReporting", + "nameLocation": "8259:25:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1264, + "nodeType": "ParameterList", + "parameters": [], + "src": "8284:2:1" + }, + "returnParameters": { + "id": 1265, + "nodeType": "ParameterList", + "parameters": [], + "src": "8295:0:1" + }, + "scope": 1275, + "src": "8250:46:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "32701403", + "id": 1269, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "rescueFailedUpdate", + "nameLocation": "8310:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1267, + "nodeType": "ParameterList", + "parameters": [], + "src": "8328:2:1" + }, + "returnParameters": { + "id": 1268, + "nodeType": "ParameterList", + "parameters": [], + "src": "8339:0:1" + }, + "scope": 1275, + "src": "8301:39:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "d9c51cd4", + "id": 1274, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addStakingRewards", + "nameLocation": "8372:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1272, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1271, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "8398:7:1", + "nodeType": "VariableDeclaration", + "scope": 1274, + "src": "8390:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1270, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8390:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8389:17:1" + }, + "returnParameters": { + "id": 1273, + "nodeType": "ParameterList", + "parameters": [], + "src": "8415:0:1" + }, + "scope": 1275, + "src": "8363:53:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1276, + "src": "58:8360:1" + } + ], + "src": "32:8387:1" + }, + "id": 1 + }, + "contracts/mocks/BenchUsingTellor.sol": { + "ast": { + "absolutePath": "contracts/mocks/BenchUsingTellor.sol", + "exportedSymbols": { + "BenchUsingTellor": [ + 1291 + ], + "ITellor": [ + 1275 + ], + "UsingTellor": [ + 493 + ] + }, + "id": 1292, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1277, + "literals": [ + "solidity", + ">=", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "32:24:2" + }, + { + "absolutePath": "contracts/UsingTellor.sol", + "file": "../UsingTellor.sol", + "id": 1278, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1292, + "sourceUnit": 494, + "src": "58:28:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1280, + "name": "UsingTellor", + "nodeType": "IdentifierPath", + "referencedDeclaration": 493, + "src": "215:11:2" + }, + "id": 1281, + "nodeType": "InheritanceSpecifier", + "src": "215:11:2" + } + ], + "contractDependencies": [ + 493 + ], + "contractKind": "contract", + "documentation": { + "id": 1279, + "nodeType": "StructuredDocumentation", + "src": "88:97:2", + "text": " @title UserContract\n This contract inherits UsingTellor for simulating user interaction" + }, + "fullyImplemented": true, + "id": 1291, + "linearizedBaseContracts": [ + 1291, + 493 + ], + "name": "BenchUsingTellor", + "nameLocation": "195:16:2", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 1289, + "nodeType": "Block", + "src": "291:2:2", + "statements": [] + }, + "id": 1290, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 1286, + "name": "_tellor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1283, + "src": "282:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "id": 1287, + "modifierName": { + "id": 1285, + "name": "UsingTellor", + "nodeType": "IdentifierPath", + "referencedDeclaration": 493, + "src": "270:11:2" + }, + "nodeType": "ModifierInvocation", + "src": "270:20:2" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1284, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1283, + "mutability": "mutable", + "name": "_tellor", + "nameLocation": "261:7:2", + "nodeType": "VariableDeclaration", + "scope": 1290, + "src": "245:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 1282, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "245:15:2", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + } + ], + "src": "244:25:2" + }, + "returnParameters": { + "id": 1288, + "nodeType": "ParameterList", + "parameters": [], + "src": "291:0:2" + }, + "scope": 1291, + "src": "233:60:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "scope": 1292, + "src": "186:109:2" + } + ], + "src": "32:264:2" + }, + "id": 2 + } + } + } +} diff --git a/artifacts/contracts/TellorPlayground.sol/TellorPlayground.dbg.json b/artifacts/contracts/TellorPlayground.sol/TellorPlayground.dbg.json index 9c000c3..2376ab5 100644 --- a/artifacts/contracts/TellorPlayground.sol/TellorPlayground.dbg.json +++ b/artifacts/contracts/TellorPlayground.sol/TellorPlayground.dbg.json @@ -1,4 +1,4 @@ { "_format": "hh-sol-dbg-1", - "buildInfo": "../../build-info/d8bc9c4dcbff4f4633ec10b95ecc3bd9.json" + "buildInfo": "../../build-info/969f1b7b30f0a731a9f9b0dc921a9161.json" } diff --git a/artifacts/contracts/TellorPlayground.sol/TellorPlayground.json b/artifacts/contracts/TellorPlayground.sol/TellorPlayground.json index 24e0243..fadfb6d 100644 --- a/artifacts/contracts/TellorPlayground.sol/TellorPlayground.json +++ b/artifacts/contracts/TellorPlayground.sol/TellorPlayground.json @@ -54,12 +54,6 @@ "name": "_value", "type": "bytes" }, - { - "indexed": false, - "internalType": "uint256", - "name": "_reward", - "type": "uint256" - }, { "indexed": false, "internalType": "uint256", @@ -195,6 +189,19 @@ "name": "Transfer", "type": "event" }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addStakingRewards", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -338,30 +345,6 @@ "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "_queryId", - "type": "bytes32" - } - ], - "name": "getCurrentReward", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -652,19 +635,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [], - "name": "timeOfLastNewValue", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -879,8 +849,8 @@ "type": "function" } ], - "bytecode": "0x608060405242600a553480156200001557600080fd5b506040518060400160405280601081526020017f54656c6c6f72506c617967726f756e6400000000000000000000000000000000815250600e9080519060200190620000639291906200014b565b506040518060400160405280600481526020017f5452425000000000000000000000000000000000000000000000000000000000815250600f9080519060200190620000b19291906200014b565b506012601060006101000a81548160ff021916908360ff16021790555030600080604051602001620000e39062000222565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002d2565b828054620001599062000244565b90600052602060002090601f0160209004810192826200017d5760008555620001c9565b82601f106200019857805160ff1916838001178555620001c9565b82800160010185558215620001c9579182015b82811115620001c8578251825591602001919060010190620001ab565b5b509050620001d89190620001dc565b5090565b5b80821115620001f7576000816000905550600101620001dd565b5090565b60006200020a60148362000239565b91506200021782620002a9565b601482019050919050565b60006200022f82620001fb565b9150819050919050565b600081905092915050565b600060028204905060018216806200025d57607f821691505b602082108114156200027457620002736200027a565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f5f474f5645524e414e43455f434f4e5452414354000000000000000000000000600082015250565b61329980620002e26000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c8063733bdef011610125578063c5958af9116100ad578063ce5e11bf1161007c578063ce5e11bf1461068f578063dd62ed3e146106bf578063e07c5486146106ef578063ef0234ad1461071f578063f25133f31461073b57610211565b8063c5958af9146105f5578063c638407114610625578063c979fe9f14610643578063cb82cc8f1461067357610211565b806396426d97116100f457806396426d9714610550578063a1e588a51461056e578063a9059cbb1461059f578063b86d1d63146105cf578063bed9d861146105eb57610211565b8063733bdef0146104b257806377b03e0d146104e65780638929f4c61461051657806395d89b411461053257610211565b8063313ce567116101a857806364473df21161017757806364473df2146103e6578063699f200f1461041657806369d43bd3146104465780636fd4f2291461046457806370a082311461048257610211565b8063313ce5671461035e5780635aa6e6751461037c5780635eaa9ced1461039a578063602bf227146103b657610211565b80631f379acc116101e45780631f379acc146102b2578063217053c0146102ce57806323b872dd146102fe578063248638e51461032e57610211565b806306fdde0314610216578063091b50ff14610234578063095ea7b31461026457806318160ddd14610294575b600080fd5b61021e61076b565b60405161022b91906128fb565b60405180910390f35b61024e600480360381019061024991906123c3565b6107fd565b60405161025b91906128d9565b60405180910390f35b61027e600480360381019061027991906122c6565b6108aa565b60405161028b919061283f565b60405180910390f35b61029c6108c1565b6040516102a99190612a7d565b60405180910390f35b6102cc60048036038101906102c791906123c3565b6108cb565b005b6102e860048036038101906102e391906123c3565b6109cf565b6040516102f591906127d9565b60405180910390f35b61031860048036038101906103139190612277565b610a11565b604051610325919061283f565b60405180910390f35b61034860048036038101906103439190612302565b610abb565b604051610355919061281d565b60405180910390f35b610366610b26565b6040516103739190612b52565b60405180910390f35b610384610b3d565b60405161039191906127d9565b60405180910390f35b6103b460048036038101906103af919061232b565b610b45565b005b6103d060048036038101906103cb9190612302565b610e32565b6040516103dd9190612a7d565b60405180910390f35b61040060048036038101906103fb91906123c3565b610e4a565b60405161040d919061283f565b60405180910390f35b610430600480360381019061042b9190612302565b610e79565b60405161043d91906127d9565b60405180910390f35b61044e610eac565b60405161045b9190612a7d565b60405180910390f35b61046c610eb2565b6040516104799190612a7d565b60405180910390f35b61049c60048036038101906104979190612212565b610eb8565b6040516104a99190612a7d565b60405180910390f35b6104cc60048036038101906104c79190612212565b610f01565b6040516104dd959493929190612aff565b60405180910390f35b61050060048036038101906104fb9190612302565b61106b565b60405161050d9190612a7d565b60405180910390f35b610530600480360381019061052b9190612466565b61108b565b005b61053a611191565b60405161054791906128fb565b60405180910390f35b610558611223565b6040516105659190612a7d565b60405180910390f35b61058860048036038101906105839190612302565b61122f565b604051610596929190612a98565b60405180910390f35b6105b960048036038101906105b491906122c6565b6112bf565b6040516105c6919061283f565b60405180910390f35b6105e960048036038101906105e49190612212565b6112d6565b005b6105f36112ec565b005b61060f600480360381019061060a91906123c3565b61141e565b60405161061c91906128d9565b60405180910390f35b61062d6114d5565b60405161063a9190612a7d565b60405180910390f35b61065d600480360381019061065891906123c3565b6114db565b60405161066a9190612a7d565b60405180910390f35b61068d60048036038101906106889190612466565b61150c565b005b6106a960048036038101906106a491906123c3565b611630565b6040516106b69190612a7d565b60405180910390f35b6106d960048036038101906106d4919061223b565b6116ca565b6040516106e69190612a7d565b60405180910390f35b610709600480360381019061070491906123c3565b611751565b60405161071691906127d9565b60405180910390f35b610739600480360381019061073491906123ff565b6117a0565b005b610755600480360381019061075091906123c3565b6118ca565b6040516107629190612a7d565b60405180910390f35b6060600e805461077a90612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546107a690612dea565b80156107f35780601f106107c8576101008083540402835291602001916107f3565b820191906000526020600020905b8154815290600101906020018083116107d657829003601f168201915b5050505050905090565b600660205281600052604060002060205280600052604060002060009150915050805461082990612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461085590612dea565b80156108a25780601f10610877576101008083540402835291602001916108a2565b820191906000526020600020905b81548152906001019060200180831161088557829003601f168201915b505050505081565b60006108b73384846118fb565b6001905092915050565b6000600d54905090565b604051806020016040528060008152506006600084815260200190815260200160002060008381526020019081526020016000209080519060200190610912929190611ff8565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600c600081548092919061096290612e4d565b919050555060076000838360405160200161097e9291906127ad565b604051602081830303815290604052805190602001208152602001908152602001600020600c5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610a1e848484611ac6565b610ab0843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610aab9190612d15565b6118fb565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b1a57602002820191906000526020600020905b815481526020019060010190808311610b06575b50505050509050919050565b6000601060009054906101000a900460ff16905090565b600030905090565b60046000868152602001908152602001600020805490508214610b9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b949061299d565b60405180910390fd5b8080519060200120851480610bb6575060648560001c11155b610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec9061295d565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610c2892919061207e565b5060046000868152602001908152602001600020429080600181540180825580915050600190039060005260206000200160009091909190915055600080610c6f8761122f565b9150915060008282610c819190612c34565b1115610c9e57610c9c338383610c979190612c34565b6112bf565b505b42600a8190555081600b6000828254610cb79190612d15565b92505081905550600060056000898152602001908152602001600020819055503360026000898152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610dd490612e4d565b91905055507fab1d593f8e2ecb165106e30a39db6769078d35c3fdbb110f24932f0d7af68c29874288888587610e0a9190612c34565b898933604051610e2198979695949392919061285a565b60405180910390a150505050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110c90612a3d565b60405180910390fd5b428160000181905550818160020160008282546111329190612c34565b925050819055508181600101600082825461114d9190612d15565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516111859291906127f4565b60405180910390a15050565b6060600f80546111a090612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546111cc90612dea565b80156112195780601f106111ee57610100808354040283529160200191611219565b820191906000526020600020905b8154815290600101906020018083116111fc57829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000806000600a54426112429190612d15565b9050600061012c6706f05b59d3b200008361125d9190612cbb565b6112679190612c8a565b9050600b54816112779190612c34565b61128030610eb8565b101561129f57600b5461129230610eb8565b61129c9190612d15565b90505b600560008681526020019081526020016000205481935093505050915091565b60006112cc338484611ac6565b6001905092915050565b6112e981683635c9adc5dea00000611cbc565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426113439190612d15565b1015611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b9061297d565b60405180910390fd5b60008160020154116113cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c2906129fd565b60405180910390fd5b6113da30338360020154611ac6565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec3360405161141391906127d9565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461144f90612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461147b90612dea565b80156114c85780601f1061149d576101008083540402835291602001916114c8565b820191906000526020600020905b8154815290600101906020018083116114ab57829003601f168201915b5050505050905092915050565b600c5481565b600760205281600052604060002081815481106114f757600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816002015411156115ba5781816002015410611587578181600201600082825461157b9190612d15565b925050819055506115b5565b6115a1333083600201548561159c9190612d15565b611e05565b6115aa57600080fd5b600081600201819055505b6115cf565b6115c5333084611e05565b6115ce57600080fd5b5b428160000181905550818160010160008282546115ec9190612c34565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516116249291906127f4565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061165b5750828111155b1561166a5760009150506116c4565b6004600085815260200190815260200160002083815481106116b5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b80805190602001208314806117b9575060648360001c11155b6117f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ef9061295d565b60405180910390fd5b611803333084611ac6565b6002826118109190612c8a565b915061181c3083611eaf565b81600b600082825461182e9190612c34565b92505081905550816005600085815260200190815260200160002060008282546118589190612c34565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff5846005600088815260200190815260200160002054856040516118bd93929190612ac1565b60405180910390a3505050565b600460205281600052604060002081815481106118e657600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561196b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196290612a1d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156119db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d29061293d565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ab99190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2d906129dd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ba6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9d9061291d565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bf59190612d15565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c4b9190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611caf9190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2390612a5d565b60405180910390fd5b80600d6000828254611d3e9190612c34565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d949190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611df99190612a7d565b60405180910390a35050565b6000611e12848484611ac6565b611ea4843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9f9190612d15565b6118fb565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f16906129bd565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f6e9190612d15565b9250508190555080600d6000828254611f879190612d15565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fec9190612a7d565b60405180910390a35050565b82805461200490612dea565b90600052602060002090601f016020900481019282612026576000855561206d565b82601f1061203f57805160ff191683800117855561206d565b8280016001018555821561206d579182015b8281111561206c578251825591602001919060010190612051565b5b50905061207a9190612104565b5090565b82805461208a90612dea565b90600052602060002090601f0160209004810192826120ac57600085556120f3565b82601f106120c557803560ff19168380011785556120f3565b828001600101855582156120f3579182015b828111156120f25782358255916020019190600101906120d7565b5b5090506121009190612104565b5090565b5b8082111561211d576000816000905550600101612105565b5090565b600061213461212f84612b92565b612b6d565b90508281526020810184848401111561214c57600080fd5b612157848285612da8565b509392505050565b60008135905061216e8161321e565b92915050565b60008135905061218381613235565b92915050565b60008083601f84011261219b57600080fd5b8235905067ffffffffffffffff8111156121b457600080fd5b6020830191508360018202830111156121cc57600080fd5b9250929050565b600082601f8301126121e457600080fd5b81356121f4848260208601612121565b91505092915050565b60008135905061220c8161324c565b92915050565b60006020828403121561222457600080fd5b60006122328482850161215f565b91505092915050565b6000806040838503121561224e57600080fd5b600061225c8582860161215f565b925050602061226d8582860161215f565b9150509250929050565b60008060006060848603121561228c57600080fd5b600061229a8682870161215f565b93505060206122ab8682870161215f565b92505060406122bc868287016121fd565b9150509250925092565b600080604083850312156122d957600080fd5b60006122e78582860161215f565b92505060206122f8858286016121fd565b9150509250929050565b60006020828403121561231457600080fd5b600061232284828501612174565b91505092915050565b60008060008060006080868803121561234357600080fd5b600061235188828901612174565b955050602086013567ffffffffffffffff81111561236e57600080fd5b61237a88828901612189565b9450945050604061238d888289016121fd565b925050606086013567ffffffffffffffff8111156123aa57600080fd5b6123b6888289016121d3565b9150509295509295909350565b600080604083850312156123d657600080fd5b60006123e485828601612174565b92505060206123f5858286016121fd565b9150509250929050565b60008060006060848603121561241457600080fd5b600061242286828701612174565b9350506020612433868287016121fd565b925050604084013567ffffffffffffffff81111561245057600080fd5b61245c868287016121d3565b9150509250925092565b60006020828403121561247857600080fd5b6000612486848285016121fd565b91505092915050565b600061249b8383612769565b60208301905092915050565b6124b081612d49565b82525050565b60006124c182612bd3565b6124cb8185612c01565b93506124d683612bc3565b8060005b838110156125075781516124ee888261248f565b97506124f983612bf4565b9250506001810190506124da565b5085935050505092915050565b61251d81612d5b565b82525050565b61252c81612d67565b82525050565b61254361253e82612d67565b612e96565b82525050565b60006125558385612c12565b9350612562838584612da8565b61256b83612f66565b840190509392505050565b600061258182612bde565b61258b8185612c12565b935061259b818560208601612db7565b6125a481612f66565b840191505092915050565b60006125ba82612be9565b6125c48185612c23565b93506125d4818560208601612db7565b6125dd81612f66565b840191505092915050565b60006125f5602383612c23565b915061260082612f77565b604082019050919050565b6000612618602283612c23565b915061262382612fc6565b604082019050919050565b600061263b601d83612c23565b915061264682613015565b602082019050919050565b600061265e601283612c23565b91506126698261303e565b602082019050919050565b6000612681601783612c23565b915061268c82613067565b602082019050919050565b60006126a4602183612c23565b91506126af82613090565b604082019050919050565b60006126c7602583612c23565b91506126d2826130df565b604082019050919050565b60006126ea602283612c23565b91506126f58261312e565b604082019050919050565b600061270d602483612c23565b91506127188261317d565b604082019050919050565b6000612730601b83612c23565b915061273b826131cc565b602082019050919050565b6000612753601f83612c23565b915061275e826131f5565b602082019050919050565b61277281612d91565b82525050565b61278181612d91565b82525050565b61279861279382612d91565b612ea0565b82525050565b6127a781612d9b565b82525050565b60006127b98285612532565b6020820191506127c98284612787565b6020820191508190509392505050565b60006020820190506127ee60008301846124a7565b92915050565b600060408201905061280960008301856124a7565b6128166020830184612778565b9392505050565b6000602082019050818103600083015261283781846124b6565b905092915050565b60006020820190506128546000830184612514565b92915050565b600060e08201905061286f600083018b612523565b61287c602083018a612778565b818103604083015261288f81888a612549565b905061289e6060830187612778565b6128ab6080830186612778565b81810360a08301526128bd8185612576565b90506128cc60c08301846124a7565b9998505050505050505050565b600060208201905081810360008301526128f38184612576565b905092915050565b6000602082019050818103600083015261291581846125af565b905092915050565b60006020820190508181036000830152612936816125e8565b9050919050565b600060208201905081810360008301526129568161260b565b9050919050565b600060208201905081810360008301526129768161262e565b9050919050565b6000602082019050818103600083015261299681612651565b9050919050565b600060208201905081810360008301526129b681612674565b9050919050565b600060208201905081810360008301526129d681612697565b9050919050565b600060208201905081810360008301526129f6816126ba565b9050919050565b60006020820190508181036000830152612a16816126dd565b9050919050565b60006020820190508181036000830152612a3681612700565b9050919050565b60006020820190508181036000830152612a5681612723565b9050919050565b60006020820190508181036000830152612a7681612746565b9050919050565b6000602082019050612a926000830184612778565b92915050565b6000604082019050612aad6000830185612778565b612aba6020830184612778565b9392505050565b6000606082019050612ad66000830186612778565b612ae36020830185612778565b8181036040830152612af58184612576565b9050949350505050565b600060a082019050612b146000830188612778565b612b216020830187612778565b612b2e6040830186612778565b612b3b6060830185612778565b612b486080830184612778565b9695505050505050565b6000602082019050612b67600083018461279e565b92915050565b6000612b77612b88565b9050612b838282612e1c565b919050565b6000604051905090565b600067ffffffffffffffff821115612bad57612bac612f37565b5b612bb682612f66565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612c3f82612d91565b9150612c4a83612d91565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612c7f57612c7e612eaa565b5b828201905092915050565b6000612c9582612d91565b9150612ca083612d91565b925082612cb057612caf612ed9565b5b828204905092915050565b6000612cc682612d91565b9150612cd183612d91565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612d0a57612d09612eaa565b5b828202905092915050565b6000612d2082612d91565b9150612d2b83612d91565b925082821015612d3e57612d3d612eaa565b5b828203905092915050565b6000612d5482612d71565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612dd5578082015181840152602081019050612dba565b83811115612de4576000848401525b50505050565b60006002820490506001821680612e0257607f821691505b60208210811415612e1657612e15612f08565b5b50919050565b612e2582612f66565b810181811067ffffffffffffffff82111715612e4457612e43612f37565b5b80604052505050565b6000612e5882612d91565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612e8b57612e8a612eaa565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e63652073686f756c6420626520636f7272656374000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61322781612d49565b811461323257600080fd5b50565b61323e81612d67565b811461324957600080fd5b50565b61325581612d91565b811461326057600080fd5b5056fea26469706673582212205747f0fa66590dfa09380f3385223fd9b03ed7174dc806da9f3313f1bb28176c64736f6c63430008030033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102115760003560e01c8063733bdef011610125578063c5958af9116100ad578063ce5e11bf1161007c578063ce5e11bf1461068f578063dd62ed3e146106bf578063e07c5486146106ef578063ef0234ad1461071f578063f25133f31461073b57610211565b8063c5958af9146105f5578063c638407114610625578063c979fe9f14610643578063cb82cc8f1461067357610211565b806396426d97116100f457806396426d9714610550578063a1e588a51461056e578063a9059cbb1461059f578063b86d1d63146105cf578063bed9d861146105eb57610211565b8063733bdef0146104b257806377b03e0d146104e65780638929f4c61461051657806395d89b411461053257610211565b8063313ce567116101a857806364473df21161017757806364473df2146103e6578063699f200f1461041657806369d43bd3146104465780636fd4f2291461046457806370a082311461048257610211565b8063313ce5671461035e5780635aa6e6751461037c5780635eaa9ced1461039a578063602bf227146103b657610211565b80631f379acc116101e45780631f379acc146102b2578063217053c0146102ce57806323b872dd146102fe578063248638e51461032e57610211565b806306fdde0314610216578063091b50ff14610234578063095ea7b31461026457806318160ddd14610294575b600080fd5b61021e61076b565b60405161022b91906128fb565b60405180910390f35b61024e600480360381019061024991906123c3565b6107fd565b60405161025b91906128d9565b60405180910390f35b61027e600480360381019061027991906122c6565b6108aa565b60405161028b919061283f565b60405180910390f35b61029c6108c1565b6040516102a99190612a7d565b60405180910390f35b6102cc60048036038101906102c791906123c3565b6108cb565b005b6102e860048036038101906102e391906123c3565b6109cf565b6040516102f591906127d9565b60405180910390f35b61031860048036038101906103139190612277565b610a11565b604051610325919061283f565b60405180910390f35b61034860048036038101906103439190612302565b610abb565b604051610355919061281d565b60405180910390f35b610366610b26565b6040516103739190612b52565b60405180910390f35b610384610b3d565b60405161039191906127d9565b60405180910390f35b6103b460048036038101906103af919061232b565b610b45565b005b6103d060048036038101906103cb9190612302565b610e32565b6040516103dd9190612a7d565b60405180910390f35b61040060048036038101906103fb91906123c3565b610e4a565b60405161040d919061283f565b60405180910390f35b610430600480360381019061042b9190612302565b610e79565b60405161043d91906127d9565b60405180910390f35b61044e610eac565b60405161045b9190612a7d565b60405180910390f35b61046c610eb2565b6040516104799190612a7d565b60405180910390f35b61049c60048036038101906104979190612212565b610eb8565b6040516104a99190612a7d565b60405180910390f35b6104cc60048036038101906104c79190612212565b610f01565b6040516104dd959493929190612aff565b60405180910390f35b61050060048036038101906104fb9190612302565b61106b565b60405161050d9190612a7d565b60405180910390f35b610530600480360381019061052b9190612466565b61108b565b005b61053a611191565b60405161054791906128fb565b60405180910390f35b610558611223565b6040516105659190612a7d565b60405180910390f35b61058860048036038101906105839190612302565b61122f565b604051610596929190612a98565b60405180910390f35b6105b960048036038101906105b491906122c6565b6112bf565b6040516105c6919061283f565b60405180910390f35b6105e960048036038101906105e49190612212565b6112d6565b005b6105f36112ec565b005b61060f600480360381019061060a91906123c3565b61141e565b60405161061c91906128d9565b60405180910390f35b61062d6114d5565b60405161063a9190612a7d565b60405180910390f35b61065d600480360381019061065891906123c3565b6114db565b60405161066a9190612a7d565b60405180910390f35b61068d60048036038101906106889190612466565b61150c565b005b6106a960048036038101906106a491906123c3565b611630565b6040516106b69190612a7d565b60405180910390f35b6106d960048036038101906106d4919061223b565b6116ca565b6040516106e69190612a7d565b60405180910390f35b610709600480360381019061070491906123c3565b611751565b60405161071691906127d9565b60405180910390f35b610739600480360381019061073491906123ff565b6117a0565b005b610755600480360381019061075091906123c3565b6118ca565b6040516107629190612a7d565b60405180910390f35b6060600e805461077a90612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546107a690612dea565b80156107f35780601f106107c8576101008083540402835291602001916107f3565b820191906000526020600020905b8154815290600101906020018083116107d657829003601f168201915b5050505050905090565b600660205281600052604060002060205280600052604060002060009150915050805461082990612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461085590612dea565b80156108a25780601f10610877576101008083540402835291602001916108a2565b820191906000526020600020905b81548152906001019060200180831161088557829003601f168201915b505050505081565b60006108b73384846118fb565b6001905092915050565b6000600d54905090565b604051806020016040528060008152506006600084815260200190815260200160002060008381526020019081526020016000209080519060200190610912929190611ff8565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600c600081548092919061096290612e4d565b919050555060076000838360405160200161097e9291906127ad565b604051602081830303815290604052805190602001208152602001908152602001600020600c5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610a1e848484611ac6565b610ab0843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610aab9190612d15565b6118fb565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b1a57602002820191906000526020600020905b815481526020019060010190808311610b06575b50505050509050919050565b6000601060009054906101000a900460ff16905090565b600030905090565b60046000868152602001908152602001600020805490508214610b9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b949061299d565b60405180910390fd5b8080519060200120851480610bb6575060648560001c11155b610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec9061295d565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610c2892919061207e565b5060046000868152602001908152602001600020429080600181540180825580915050600190039060005260206000200160009091909190915055600080610c6f8761122f565b9150915060008282610c819190612c34565b1115610c9e57610c9c338383610c979190612c34565b6112bf565b505b42600a8190555081600b6000828254610cb79190612d15565b92505081905550600060056000898152602001908152602001600020819055503360026000898152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610dd490612e4d565b91905055507fab1d593f8e2ecb165106e30a39db6769078d35c3fdbb110f24932f0d7af68c29874288888587610e0a9190612c34565b898933604051610e2198979695949392919061285a565b60405180910390a150505050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110c90612a3d565b60405180910390fd5b428160000181905550818160020160008282546111329190612c34565b925050819055508181600101600082825461114d9190612d15565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516111859291906127f4565b60405180910390a15050565b6060600f80546111a090612dea565b80601f01602080910402602001604051908101604052809291908181526020018280546111cc90612dea565b80156112195780601f106111ee57610100808354040283529160200191611219565b820191906000526020600020905b8154815290600101906020018083116111fc57829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000806000600a54426112429190612d15565b9050600061012c6706f05b59d3b200008361125d9190612cbb565b6112679190612c8a565b9050600b54816112779190612c34565b61128030610eb8565b101561129f57600b5461129230610eb8565b61129c9190612d15565b90505b600560008681526020019081526020016000205481935093505050915091565b60006112cc338484611ac6565b6001905092915050565b6112e981683635c9adc5dea00000611cbc565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426113439190612d15565b1015611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b9061297d565b60405180910390fd5b60008160020154116113cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c2906129fd565b60405180910390fd5b6113da30338360020154611ac6565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec3360405161141391906127d9565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461144f90612dea565b80601f016020809104026020016040519081016040528092919081815260200182805461147b90612dea565b80156114c85780601f1061149d576101008083540402835291602001916114c8565b820191906000526020600020905b8154815290600101906020018083116114ab57829003601f168201915b5050505050905092915050565b600c5481565b600760205281600052604060002081815481106114f757600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506000816002015411156115ba5781816002015410611587578181600201600082825461157b9190612d15565b925050819055506115b5565b6115a1333083600201548561159c9190612d15565b611e05565b6115aa57600080fd5b600081600201819055505b6115cf565b6115c5333084611e05565b6115ce57600080fd5b5b428160000181905550818160010160008282546115ec9190612c34565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516116249291906127f4565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061165b5750828111155b1561166a5760009150506116c4565b6004600085815260200190815260200160002083815481106116b5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b80805190602001208314806117b9575060648360001c11155b6117f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ef9061295d565b60405180910390fd5b611803333084611ac6565b6002826118109190612c8a565b915061181c3083611eaf565b81600b600082825461182e9190612c34565b92505081905550816005600085815260200190815260200160002060008282546118589190612c34565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff5846005600088815260200190815260200160002054856040516118bd93929190612ac1565b60405180910390a3505050565b600460205281600052604060002081815481106118e657600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561196b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196290612a1d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156119db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d29061293d565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ab99190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611b36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2d906129dd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ba6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9d9061291d565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bf59190612d15565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c4b9190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611caf9190612a7d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2390612a5d565b60405180910390fd5b80600d6000828254611d3e9190612c34565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d949190612c34565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611df99190612a7d565b60405180910390a35050565b6000611e12848484611ac6565b611ea4843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9f9190612d15565b6118fb565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f16906129bd565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f6e9190612d15565b9250508190555080600d6000828254611f879190612d15565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611fec9190612a7d565b60405180910390a35050565b82805461200490612dea565b90600052602060002090601f016020900481019282612026576000855561206d565b82601f1061203f57805160ff191683800117855561206d565b8280016001018555821561206d579182015b8281111561206c578251825591602001919060010190612051565b5b50905061207a9190612104565b5090565b82805461208a90612dea565b90600052602060002090601f0160209004810192826120ac57600085556120f3565b82601f106120c557803560ff19168380011785556120f3565b828001600101855582156120f3579182015b828111156120f25782358255916020019190600101906120d7565b5b5090506121009190612104565b5090565b5b8082111561211d576000816000905550600101612105565b5090565b600061213461212f84612b92565b612b6d565b90508281526020810184848401111561214c57600080fd5b612157848285612da8565b509392505050565b60008135905061216e8161321e565b92915050565b60008135905061218381613235565b92915050565b60008083601f84011261219b57600080fd5b8235905067ffffffffffffffff8111156121b457600080fd5b6020830191508360018202830111156121cc57600080fd5b9250929050565b600082601f8301126121e457600080fd5b81356121f4848260208601612121565b91505092915050565b60008135905061220c8161324c565b92915050565b60006020828403121561222457600080fd5b60006122328482850161215f565b91505092915050565b6000806040838503121561224e57600080fd5b600061225c8582860161215f565b925050602061226d8582860161215f565b9150509250929050565b60008060006060848603121561228c57600080fd5b600061229a8682870161215f565b93505060206122ab8682870161215f565b92505060406122bc868287016121fd565b9150509250925092565b600080604083850312156122d957600080fd5b60006122e78582860161215f565b92505060206122f8858286016121fd565b9150509250929050565b60006020828403121561231457600080fd5b600061232284828501612174565b91505092915050565b60008060008060006080868803121561234357600080fd5b600061235188828901612174565b955050602086013567ffffffffffffffff81111561236e57600080fd5b61237a88828901612189565b9450945050604061238d888289016121fd565b925050606086013567ffffffffffffffff8111156123aa57600080fd5b6123b6888289016121d3565b9150509295509295909350565b600080604083850312156123d657600080fd5b60006123e485828601612174565b92505060206123f5858286016121fd565b9150509250929050565b60008060006060848603121561241457600080fd5b600061242286828701612174565b9350506020612433868287016121fd565b925050604084013567ffffffffffffffff81111561245057600080fd5b61245c868287016121d3565b9150509250925092565b60006020828403121561247857600080fd5b6000612486848285016121fd565b91505092915050565b600061249b8383612769565b60208301905092915050565b6124b081612d49565b82525050565b60006124c182612bd3565b6124cb8185612c01565b93506124d683612bc3565b8060005b838110156125075781516124ee888261248f565b97506124f983612bf4565b9250506001810190506124da565b5085935050505092915050565b61251d81612d5b565b82525050565b61252c81612d67565b82525050565b61254361253e82612d67565b612e96565b82525050565b60006125558385612c12565b9350612562838584612da8565b61256b83612f66565b840190509392505050565b600061258182612bde565b61258b8185612c12565b935061259b818560208601612db7565b6125a481612f66565b840191505092915050565b60006125ba82612be9565b6125c48185612c23565b93506125d4818560208601612db7565b6125dd81612f66565b840191505092915050565b60006125f5602383612c23565b915061260082612f77565b604082019050919050565b6000612618602283612c23565b915061262382612fc6565b604082019050919050565b600061263b601d83612c23565b915061264682613015565b602082019050919050565b600061265e601283612c23565b91506126698261303e565b602082019050919050565b6000612681601783612c23565b915061268c82613067565b602082019050919050565b60006126a4602183612c23565b91506126af82613090565b604082019050919050565b60006126c7602583612c23565b91506126d2826130df565b604082019050919050565b60006126ea602283612c23565b91506126f58261312e565b604082019050919050565b600061270d602483612c23565b91506127188261317d565b604082019050919050565b6000612730601b83612c23565b915061273b826131cc565b602082019050919050565b6000612753601f83612c23565b915061275e826131f5565b602082019050919050565b61277281612d91565b82525050565b61278181612d91565b82525050565b61279861279382612d91565b612ea0565b82525050565b6127a781612d9b565b82525050565b60006127b98285612532565b6020820191506127c98284612787565b6020820191508190509392505050565b60006020820190506127ee60008301846124a7565b92915050565b600060408201905061280960008301856124a7565b6128166020830184612778565b9392505050565b6000602082019050818103600083015261283781846124b6565b905092915050565b60006020820190506128546000830184612514565b92915050565b600060e08201905061286f600083018b612523565b61287c602083018a612778565b818103604083015261288f81888a612549565b905061289e6060830187612778565b6128ab6080830186612778565b81810360a08301526128bd8185612576565b90506128cc60c08301846124a7565b9998505050505050505050565b600060208201905081810360008301526128f38184612576565b905092915050565b6000602082019050818103600083015261291581846125af565b905092915050565b60006020820190508181036000830152612936816125e8565b9050919050565b600060208201905081810360008301526129568161260b565b9050919050565b600060208201905081810360008301526129768161262e565b9050919050565b6000602082019050818103600083015261299681612651565b9050919050565b600060208201905081810360008301526129b681612674565b9050919050565b600060208201905081810360008301526129d681612697565b9050919050565b600060208201905081810360008301526129f6816126ba565b9050919050565b60006020820190508181036000830152612a16816126dd565b9050919050565b60006020820190508181036000830152612a3681612700565b9050919050565b60006020820190508181036000830152612a5681612723565b9050919050565b60006020820190508181036000830152612a7681612746565b9050919050565b6000602082019050612a926000830184612778565b92915050565b6000604082019050612aad6000830185612778565b612aba6020830184612778565b9392505050565b6000606082019050612ad66000830186612778565b612ae36020830185612778565b8181036040830152612af58184612576565b9050949350505050565b600060a082019050612b146000830188612778565b612b216020830187612778565b612b2e6040830186612778565b612b3b6060830185612778565b612b486080830184612778565b9695505050505050565b6000602082019050612b67600083018461279e565b92915050565b6000612b77612b88565b9050612b838282612e1c565b919050565b6000604051905090565b600067ffffffffffffffff821115612bad57612bac612f37565b5b612bb682612f66565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612c3f82612d91565b9150612c4a83612d91565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612c7f57612c7e612eaa565b5b828201905092915050565b6000612c9582612d91565b9150612ca083612d91565b925082612cb057612caf612ed9565b5b828204905092915050565b6000612cc682612d91565b9150612cd183612d91565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612d0a57612d09612eaa565b5b828202905092915050565b6000612d2082612d91565b9150612d2b83612d91565b925082821015612d3e57612d3d612eaa565b5b828203905092915050565b6000612d5482612d71565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612dd5578082015181840152602081019050612dba565b83811115612de4576000848401525b50505050565b60006002820490506001821680612e0257607f821691505b60208210811415612e1657612e15612f08565b5b50919050565b612e2582612f66565b810181811067ffffffffffffffff82111715612e4457612e43612f37565b5b80604052505050565b6000612e5882612d91565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612e8b57612e8a612eaa565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e63652073686f756c6420626520636f7272656374000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61322781612d49565b811461323257600080fd5b50565b61323e81612d67565b811461324957600080fd5b50565b61325581612d91565b811461326057600080fd5b5056fea26469706673582212205747f0fa66590dfa09380f3385223fd9b03ed7174dc806da9f3313f1bb28176c64736f6c63430008030033", + "bytecode": "0x60806040523480156200001157600080fd5b506040518060400160405280601081526020017f54656c6c6f72506c617967726f756e6400000000000000000000000000000000815250600d90805190602001906200005f92919062000147565b506040518060400160405280600481526020017f5452425000000000000000000000000000000000000000000000000000000000815250600e9080519060200190620000ad92919062000147565b506012600f60006101000a81548160ff021916908360ff16021790555030600080604051602001620000df906200021e565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002ce565b828054620001559062000240565b90600052602060002090601f016020900481019282620001795760008555620001c5565b82601f106200019457805160ff1916838001178555620001c5565b82800160010185558215620001c5579182015b82811115620001c4578251825591602001919060010190620001a7565b5b509050620001d49190620001d8565b5090565b5b80821115620001f3576000816000905550600101620001d9565b5090565b60006200020660148362000235565b91506200021382620002a5565b601482019050919050565b60006200022b82620001f7565b9150819050919050565b600081905092915050565b600060028204905060018216806200025957607f821691505b6020821081141562000270576200026f62000276565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f5f474f5645524e414e43455f434f4e5452414354000000000000000000000000600082015250565b6130d380620002de6000396000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c806377b03e0d1161011a578063c6384071116100ad578063d9c51cd41161007c578063d9c51cd414610665578063dd62ed3e14610681578063e07c5486146106b1578063ef0234ad146106e1578063f25133f3146106fd57610206565b8063c6384071146105cb578063c979fe9f146105e9578063cb82cc8f14610619578063ce5e11bf1461063557610206565b8063a9059cbb116100e9578063a9059cbb14610545578063b86d1d6314610575578063bed9d86114610591578063c5958af91461059b57610206565b806377b03e0d146104bd5780638929f4c6146104ed57806395d89b411461050957806396426d971461052757610206565b8063313ce5671161019d57806364473df21161016c57806364473df2146103db578063699f200f1461040b57806369d43bd31461043b57806370a0823114610459578063733bdef01461048957610206565b8063313ce567146103535780635aa6e675146103715780635eaa9ced1461038f578063602bf227146103ab57610206565b80631f379acc116101d95780631f379acc146102a7578063217053c0146102c357806323b872dd146102f3578063248638e51461032357610206565b806306fdde031461020b578063091b50ff14610229578063095ea7b31461025957806318160ddd14610289575b600080fd5b61021361072d565b60405161022091906127b8565b60405180910390f35b610243600480360381019061023e919061228e565b6107bf565b6040516102509190612796565b60405180910390f35b610273600480360381019061026e9190612191565b61086c565b604051610280919061270a565b60405180910390f35b610291610883565b60405161029e919061293a565b60405180910390f35b6102c160048036038101906102bc919061228e565b61088d565b005b6102dd60048036038101906102d8919061228e565b610991565b6040516102ea91906126a4565b60405180910390f35b61030d60048036038101906103089190612142565b6109d3565b60405161031a919061270a565b60405180910390f35b61033d600480360381019061033891906121cd565b610a7d565b60405161034a91906126e8565b60405180910390f35b61035b610ae8565b60405161036891906129e6565b60405180910390f35b610379610aff565b60405161038691906126a4565b60405180910390f35b6103a960048036038101906103a491906121f6565b610b07565b005b6103c560048036038101906103c091906121cd565b610d7c565b6040516103d2919061293a565b60405180910390f35b6103f560048036038101906103f0919061228e565b610d94565b604051610402919061270a565b60405180910390f35b610425600480360381019061042091906121cd565b610dc3565b60405161043291906126a4565b60405180910390f35b610443610df6565b604051610450919061293a565b60405180910390f35b610473600480360381019061046e91906120dd565b610dfc565b604051610480919061293a565b60405180910390f35b6104a3600480360381019061049e91906120dd565b610e45565b6040516104b4959493929190612993565b60405180910390f35b6104d760048036038101906104d291906121cd565b610faf565b6040516104e4919061293a565b60405180910390f35b61050760048036038101906105029190612331565b610fcf565b005b6105116110d5565b60405161051e91906127b8565b60405180910390f35b61052f611167565b60405161053c919061293a565b60405180910390f35b61055f600480360381019061055a9190612191565b611173565b60405161056c919061270a565b60405180910390f35b61058f600480360381019061058a91906120dd565b61118a565b005b6105996111a0565b005b6105b560048036038101906105b0919061228e565b6112d2565b6040516105c29190612796565b60405180910390f35b6105d3611389565b6040516105e0919061293a565b60405180910390f35b61060360048036038101906105fe919061228e565b61138f565b604051610610919061293a565b60405180910390f35b610633600480360381019061062e9190612331565b6113c0565b005b61064f600480360381019061064a919061228e565b6114e4565b60405161065c919061293a565b60405180910390f35b61067f600480360381019061067a9190612331565b61157e565b005b61069b60048036038101906106969190612106565b611595565b6040516106a8919061293a565b60405180910390f35b6106cb60048036038101906106c6919061228e565b61161c565b6040516106d891906126a4565b60405180910390f35b6106fb60048036038101906106f691906122ca565b61166b565b005b6107176004803603810190610712919061228e565b611795565b604051610724919061293a565b60405180910390f35b6060600d805461073c90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461076890612c24565b80156107b55780601f1061078a576101008083540402835291602001916107b5565b820191906000526020600020905b81548152906001019060200180831161079857829003601f168201915b5050505050905090565b60066020528160005260406000206020528060005260406000206000915091505080546107eb90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461081790612c24565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b505050505081565b60006108793384846117c6565b6001905092915050565b6000600c54905090565b6040518060200160405280600081525060066000848152602001908152602001600020600083815260200190815260200160002090805190602001906108d4929190611ec3565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600b600081548092919061092490612c87565b9190505550600760008383604051602001610940929190612678565b604051602081830303815290604052805190602001208152602001908152602001600020600b5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109e0848484611991565b610a72843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6d9190612b4f565b6117c6565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610adc57602002820191906000526020600020905b815481526020019060010190808311610ac8575b50505050509050919050565b6000600f60009054906101000a900460ff16905090565b600030905090565b6004600086815260200190815260200160002080549050821480610b2b5750600082145b610b6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b619061285a565b60405180910390fd5b8080519060200120851480610b83575060648560001c11155b610bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb99061281a565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610bf5929190611f49565b50600460008681526020019081526020016000204290806001815401808255809150506001900390600052602060002001600090919091909150553360026000878152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610d2d90612c87565b91905055507f48e9e2c732ba278de6ac88a3a57a5c5ba13d3d8370e709b3b98333a57876ca9585428686868633604051610d6d9796959493929190612725565b60405180910390a15050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611059576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611050906128fa565b60405180910390fd5b428160000181905550818160020160008282546110769190612ac8565b92505081905550818160010160008282546110919190612b4f565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516110c99291906126bf565b60405180910390a15050565b6060600e80546110e490612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461111090612c24565b801561115d5780601f106111325761010080835404028352916020019161115d565b820191906000526020600020905b81548152906001019060200180831161114057829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000611180338484611991565b6001905092915050565b61119d81683635c9adc5dea00000611b87565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426111f79190612b4f565b1015611238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122f9061283a565b60405180910390fd5b600081600201541161127f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611276906128ba565b60405180910390fd5b61128e30338360020154611991565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec336040516112c791906126a4565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461130390612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461132f90612c24565b801561137c5780601f106113515761010080835404028352916020019161137c565b820191906000526020600020905b81548152906001019060200180831161135f57829003601f168201915b5050505050905092915050565b600b5481565b600760205281600052604060002081815481106113ab57600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160020154111561146e578181600201541061143b578181600201600082825461142f9190612b4f565b92505081905550611469565b61145533308360020154856114509190612b4f565b611cd0565b61145e57600080fd5b600081600201819055505b611483565b611479333084611cd0565b61148257600080fd5b5b428160000181905550818160010160008282546114a09190612ac8565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516114d89291906126bf565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061150f5750828111155b1561151e576000915050611578565b600460008581526020019081526020016000208381548110611569577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b611589333083611cd0565b61159257600080fd5b50565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b8080519060200120831480611684575060648360001c11155b6116c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ba9061281a565b60405180910390fd5b6116ce333084611991565b6002826116db9190612b1e565b91506116e73083611d7a565b81600a60008282546116f99190612ac8565b92505081905550816005600085815260200190815260200160002060008282546117239190612ac8565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff58460056000888152602001908152602001600020548560405161178893929190612955565b60405180910390a3505050565b600460205281600052604060002081815481106117b157600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611836576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182d906128da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189d906127fa565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611984919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f89061289a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a68906127da565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ac09190612b4f565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b169190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b7a919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611bf7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bee9061291a565b60405180910390fd5b80600c6000828254611c099190612ac8565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c5f9190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cc4919061293a565b60405180910390a35050565b6000611cdd848484611991565b611d6f843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d6a9190612b4f565b6117c6565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611de19061287a565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e399190612b4f565b9250508190555080600c6000828254611e529190612b4f565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611eb7919061293a565b60405180910390a35050565b828054611ecf90612c24565b90600052602060002090601f016020900481019282611ef15760008555611f38565b82601f10611f0a57805160ff1916838001178555611f38565b82800160010185558215611f38579182015b82811115611f37578251825591602001919060010190611f1c565b5b509050611f459190611fcf565b5090565b828054611f5590612c24565b90600052602060002090601f016020900481019282611f775760008555611fbe565b82601f10611f9057803560ff1916838001178555611fbe565b82800160010185558215611fbe579182015b82811115611fbd578235825591602001919060010190611fa2565b5b509050611fcb9190611fcf565b5090565b5b80821115611fe8576000816000905550600101611fd0565b5090565b6000611fff611ffa84612a26565b612a01565b90508281526020810184848401111561201757600080fd5b612022848285612be2565b509392505050565b60008135905061203981613058565b92915050565b60008135905061204e8161306f565b92915050565b60008083601f84011261206657600080fd5b8235905067ffffffffffffffff81111561207f57600080fd5b60208301915083600182028301111561209757600080fd5b9250929050565b600082601f8301126120af57600080fd5b81356120bf848260208601611fec565b91505092915050565b6000813590506120d781613086565b92915050565b6000602082840312156120ef57600080fd5b60006120fd8482850161202a565b91505092915050565b6000806040838503121561211957600080fd5b60006121278582860161202a565b92505060206121388582860161202a565b9150509250929050565b60008060006060848603121561215757600080fd5b60006121658682870161202a565b93505060206121768682870161202a565b9250506040612187868287016120c8565b9150509250925092565b600080604083850312156121a457600080fd5b60006121b28582860161202a565b92505060206121c3858286016120c8565b9150509250929050565b6000602082840312156121df57600080fd5b60006121ed8482850161203f565b91505092915050565b60008060008060006080868803121561220e57600080fd5b600061221c8882890161203f565b955050602086013567ffffffffffffffff81111561223957600080fd5b61224588828901612054565b94509450506040612258888289016120c8565b925050606086013567ffffffffffffffff81111561227557600080fd5b6122818882890161209e565b9150509295509295909350565b600080604083850312156122a157600080fd5b60006122af8582860161203f565b92505060206122c0858286016120c8565b9150509250929050565b6000806000606084860312156122df57600080fd5b60006122ed8682870161203f565b93505060206122fe868287016120c8565b925050604084013567ffffffffffffffff81111561231b57600080fd5b6123278682870161209e565b9150509250925092565b60006020828403121561234357600080fd5b6000612351848285016120c8565b91505092915050565b60006123668383612634565b60208301905092915050565b61237b81612b83565b82525050565b600061238c82612a67565b6123968185612a95565b93506123a183612a57565b8060005b838110156123d25781516123b9888261235a565b97506123c483612a88565b9250506001810190506123a5565b5085935050505092915050565b6123e881612b95565b82525050565b6123f781612ba1565b82525050565b61240e61240982612ba1565b612cd0565b82525050565b60006124208385612aa6565b935061242d838584612be2565b61243683612da0565b840190509392505050565b600061244c82612a72565b6124568185612aa6565b9350612466818560208601612bf1565b61246f81612da0565b840191505092915050565b600061248582612a7d565b61248f8185612ab7565b935061249f818560208601612bf1565b6124a881612da0565b840191505092915050565b60006124c0602383612ab7565b91506124cb82612db1565b604082019050919050565b60006124e3602283612ab7565b91506124ee82612e00565b604082019050919050565b6000612506601d83612ab7565b915061251182612e4f565b602082019050919050565b6000612529601283612ab7565b915061253482612e78565b602082019050919050565b600061254c602083612ab7565b915061255782612ea1565b602082019050919050565b600061256f602183612ab7565b915061257a82612eca565b604082019050919050565b6000612592602583612ab7565b915061259d82612f19565b604082019050919050565b60006125b5602283612ab7565b91506125c082612f68565b604082019050919050565b60006125d8602483612ab7565b91506125e382612fb7565b604082019050919050565b60006125fb601b83612ab7565b915061260682613006565b602082019050919050565b600061261e601f83612ab7565b91506126298261302f565b602082019050919050565b61263d81612bcb565b82525050565b61264c81612bcb565b82525050565b61266361265e82612bcb565b612cda565b82525050565b61267281612bd5565b82525050565b600061268482856123fd565b6020820191506126948284612652565b6020820191508190509392505050565b60006020820190506126b96000830184612372565b92915050565b60006040820190506126d46000830185612372565b6126e16020830184612643565b9392505050565b600060208201905081810360008301526127028184612381565b905092915050565b600060208201905061271f60008301846123df565b92915050565b600060c08201905061273a600083018a6123ee565b6127476020830189612643565b818103604083015261275a818789612414565b90506127696060830186612643565b818103608083015261277b8185612441565b905061278a60a0830184612372565b98975050505050505050565b600060208201905081810360008301526127b08184612441565b905092915050565b600060208201905081810360008301526127d2818461247a565b905092915050565b600060208201905081810360008301526127f3816124b3565b9050919050565b60006020820190508181036000830152612813816124d6565b9050919050565b60006020820190508181036000830152612833816124f9565b9050919050565b600060208201905081810360008301526128538161251c565b9050919050565b600060208201905081810360008301526128738161253f565b9050919050565b6000602082019050818103600083015261289381612562565b9050919050565b600060208201905081810360008301526128b381612585565b9050919050565b600060208201905081810360008301526128d3816125a8565b9050919050565b600060208201905081810360008301526128f3816125cb565b9050919050565b60006020820190508181036000830152612913816125ee565b9050919050565b6000602082019050818103600083015261293381612611565b9050919050565b600060208201905061294f6000830184612643565b92915050565b600060608201905061296a6000830186612643565b6129776020830185612643565b81810360408301526129898184612441565b9050949350505050565b600060a0820190506129a86000830188612643565b6129b56020830187612643565b6129c26040830186612643565b6129cf6060830185612643565b6129dc6080830184612643565b9695505050505050565b60006020820190506129fb6000830184612669565b92915050565b6000612a0b612a1c565b9050612a178282612c56565b919050565b6000604051905090565b600067ffffffffffffffff821115612a4157612a40612d71565b5b612a4a82612da0565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ad382612bcb565b9150612ade83612bcb565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612b1357612b12612ce4565b5b828201905092915050565b6000612b2982612bcb565b9150612b3483612bcb565b925082612b4457612b43612d13565b5b828204905092915050565b6000612b5a82612bcb565b9150612b6583612bcb565b925082821015612b7857612b77612ce4565b5b828203905092915050565b6000612b8e82612bab565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612c0f578082015181840152602081019050612bf4565b83811115612c1e576000848401525b50505050565b60006002820490506001821680612c3c57607f821691505b60208210811415612c5057612c4f612d42565b5b50919050565b612c5f82612da0565b810181811067ffffffffffffffff82111715612c7e57612c7d612d71565b5b80604052505050565b6000612c9282612bcb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612cc557612cc4612ce4565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e6365206d757374206d617463682074696d657374616d7020696e646578600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61306181612b83565b811461306c57600080fd5b50565b61307881612ba1565b811461308357600080fd5b50565b61308f81612bcb565b811461309a57600080fd5b5056fea2646970667358221220090b234664dbe1c38c0c1d19e1d45e53151e48d7c1e094b69a54bbc66548b7e664736f6c63430008030033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102065760003560e01c806377b03e0d1161011a578063c6384071116100ad578063d9c51cd41161007c578063d9c51cd414610665578063dd62ed3e14610681578063e07c5486146106b1578063ef0234ad146106e1578063f25133f3146106fd57610206565b8063c6384071146105cb578063c979fe9f146105e9578063cb82cc8f14610619578063ce5e11bf1461063557610206565b8063a9059cbb116100e9578063a9059cbb14610545578063b86d1d6314610575578063bed9d86114610591578063c5958af91461059b57610206565b806377b03e0d146104bd5780638929f4c6146104ed57806395d89b411461050957806396426d971461052757610206565b8063313ce5671161019d57806364473df21161016c57806364473df2146103db578063699f200f1461040b57806369d43bd31461043b57806370a0823114610459578063733bdef01461048957610206565b8063313ce567146103535780635aa6e675146103715780635eaa9ced1461038f578063602bf227146103ab57610206565b80631f379acc116101d95780631f379acc146102a7578063217053c0146102c357806323b872dd146102f3578063248638e51461032357610206565b806306fdde031461020b578063091b50ff14610229578063095ea7b31461025957806318160ddd14610289575b600080fd5b61021361072d565b60405161022091906127b8565b60405180910390f35b610243600480360381019061023e919061228e565b6107bf565b6040516102509190612796565b60405180910390f35b610273600480360381019061026e9190612191565b61086c565b604051610280919061270a565b60405180910390f35b610291610883565b60405161029e919061293a565b60405180910390f35b6102c160048036038101906102bc919061228e565b61088d565b005b6102dd60048036038101906102d8919061228e565b610991565b6040516102ea91906126a4565b60405180910390f35b61030d60048036038101906103089190612142565b6109d3565b60405161031a919061270a565b60405180910390f35b61033d600480360381019061033891906121cd565b610a7d565b60405161034a91906126e8565b60405180910390f35b61035b610ae8565b60405161036891906129e6565b60405180910390f35b610379610aff565b60405161038691906126a4565b60405180910390f35b6103a960048036038101906103a491906121f6565b610b07565b005b6103c560048036038101906103c091906121cd565b610d7c565b6040516103d2919061293a565b60405180910390f35b6103f560048036038101906103f0919061228e565b610d94565b604051610402919061270a565b60405180910390f35b610425600480360381019061042091906121cd565b610dc3565b60405161043291906126a4565b60405180910390f35b610443610df6565b604051610450919061293a565b60405180910390f35b610473600480360381019061046e91906120dd565b610dfc565b604051610480919061293a565b60405180910390f35b6104a3600480360381019061049e91906120dd565b610e45565b6040516104b4959493929190612993565b60405180910390f35b6104d760048036038101906104d291906121cd565b610faf565b6040516104e4919061293a565b60405180910390f35b61050760048036038101906105029190612331565b610fcf565b005b6105116110d5565b60405161051e91906127b8565b60405180910390f35b61052f611167565b60405161053c919061293a565b60405180910390f35b61055f600480360381019061055a9190612191565b611173565b60405161056c919061270a565b60405180910390f35b61058f600480360381019061058a91906120dd565b61118a565b005b6105996111a0565b005b6105b560048036038101906105b0919061228e565b6112d2565b6040516105c29190612796565b60405180910390f35b6105d3611389565b6040516105e0919061293a565b60405180910390f35b61060360048036038101906105fe919061228e565b61138f565b604051610610919061293a565b60405180910390f35b610633600480360381019061062e9190612331565b6113c0565b005b61064f600480360381019061064a919061228e565b6114e4565b60405161065c919061293a565b60405180910390f35b61067f600480360381019061067a9190612331565b61157e565b005b61069b60048036038101906106969190612106565b611595565b6040516106a8919061293a565b60405180910390f35b6106cb60048036038101906106c6919061228e565b61161c565b6040516106d891906126a4565b60405180910390f35b6106fb60048036038101906106f691906122ca565b61166b565b005b6107176004803603810190610712919061228e565b611795565b604051610724919061293a565b60405180910390f35b6060600d805461073c90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461076890612c24565b80156107b55780601f1061078a576101008083540402835291602001916107b5565b820191906000526020600020905b81548152906001019060200180831161079857829003601f168201915b5050505050905090565b60066020528160005260406000206020528060005260406000206000915091505080546107eb90612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461081790612c24565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b505050505081565b60006108793384846117c6565b6001905092915050565b6000600c54905090565b6040518060200160405280600081525060066000848152602001908152602001600020600083815260200190815260200160002090805190602001906108d4929190611ec3565b506001806000848152602001908152602001600020600083815260200190815260200160002060006101000a81548160ff021916908315150217905550600b600081548092919061092490612c87565b9190505550600760008383604051602001610940929190612678565b604051602081830303815290604052805190602001208152602001908152602001600020600b5490806001815401808255809150506001900390600052602060002001600090919091909150555050565b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109e0848484611991565b610a72843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6d9190612b4f565b6117c6565b600190509392505050565b606060076000838152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610adc57602002820191906000526020600020905b815481526020019060010190808311610ac8575b50505050509050919050565b6000600f60009054906101000a900460ff16905090565b600030905090565b6004600086815260200190815260200160002080549050821480610b2b5750600082145b610b6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b619061285a565b60405180910390fd5b8080519060200120851480610b83575060648560001c11155b610bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb99061281a565b60405180910390fd5b83836006600088815260200190815260200160002060004281526020019081526020016000209190610bf5929190611f49565b50600460008681526020019081526020016000204290806001815401808255809150506001900390600052602060002001600090919091909150553360026000878152602001908152602001600020600042815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000815480929190610d2d90612c87565b91905055507f48e9e2c732ba278de6ac88a3a57a5c5ba13d3d8370e709b3b98333a57876ca9585428686868633604051610d6d9796959493929190612725565b60405180910390a15050505050565b60056020528060005260406000206000915090505481565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549450945094509450945091939590929450565b600060046000838152602001908152602001600020805490509050919050565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508181600101541015611059576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611050906128fa565b60405180910390fd5b428160000181905550818160020160008282546110769190612ac8565b92505081905550818160010160008282546110919190612b4f565b925050819055507f3d8d9df4bd0172df32e557fa48e96435cd7f2cac06aaffacfaee608e6f7898ef33836040516110c99291906126bf565b60405180910390a15050565b6060600e80546110e490612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461111090612c24565b801561115d5780601f106111325761010080835404028352916020019161115d565b820191906000526020600020905b81548152906001019060200180831161114057829003601f168201915b5050505050905090565b6706f05b59d3b2000081565b6000611180338484611991565b6001905092915050565b61119d81683635c9adc5dea00000611b87565b50565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905062093a808160000154426111f79190612b4f565b1015611238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122f9061283a565b60405180910390fd5b600081600201541161127f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611276906128ba565b60405180910390fd5b61128e30338360020154611991565b600081600201819055507f4a7934670bd8304e7da22378be1368f7c4fef17c5aee81804beda8638fe428ec336040516112c791906126a4565b60405180910390a150565b6060600660008481526020019081526020016000206000838152602001908152602001600020805461130390612c24565b80601f016020809104026020016040519081016040528092919081815260200182805461132f90612c24565b801561137c5780601f106113515761010080835404028352916020019161137c565b820191906000526020600020905b81548152906001019060200180831161135f57829003601f168201915b5050505050905092915050565b600b5481565b600760205281600052604060002081815481106113ab57600080fd5b90600052602060002001600091509150505481565b6000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008160020154111561146e578181600201541061143b578181600201600082825461142f9190612b4f565b92505081905550611469565b61145533308360020154856114509190612b4f565b611cd0565b61145e57600080fd5b600081600201819055505b611483565b611479333084611cd0565b61148257600080fd5b5b428160000181905550818160010160008282546114a09190612ac8565b925050819055507fa96c2cce65119a2170d1711a6e82f18f2006448828483ba7545e59547654364733836040516114d89291906126bf565b60405180910390a15050565b60008060046000858152602001908152602001600020805490509050600081148061150f5750828111155b1561151e576000915050611578565b600460008581526020019081526020016000208381548110611569577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549150505b92915050565b611589333083611cd0565b61159257600080fd5b50565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060026000848152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b8080519060200120831480611684575060648360001c11155b6116c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ba9061281a565b60405180910390fd5b6116ce333084611991565b6002826116db9190612b1e565b91506116e73083611d7a565b81600a60008282546116f99190612ac8565b92505081905550816005600085815260200190815260200160002060008282546117239190612ac8565b92505081905550823373ffffffffffffffffffffffffffffffffffffffff167fd951d408a0f5057da5c25b826fb5ce403d56542962b6ac6994dbc6d5432fbff58460056000888152602001908152602001600020548560405161178893929190612955565b60405180910390a3505050565b600460205281600052604060002081815481106117b157600080fd5b90600052602060002001600091509150505481565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611836576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182d906128da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189d906127fa565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611984919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a01576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f89061289a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a68906127da565b60405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ac09190612b4f565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b169190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b7a919061293a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611bf7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bee9061291a565b60405180910390fd5b80600c6000828254611c099190612ac8565b9250508190555080600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c5f9190612ac8565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cc4919061293a565b60405180910390a35050565b6000611cdd848484611991565b611d6f843384600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d6a9190612b4f565b6117c6565b600190509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611de19061287a565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e399190612b4f565b9250508190555080600c6000828254611e529190612b4f565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611eb7919061293a565b60405180910390a35050565b828054611ecf90612c24565b90600052602060002090601f016020900481019282611ef15760008555611f38565b82601f10611f0a57805160ff1916838001178555611f38565b82800160010185558215611f38579182015b82811115611f37578251825591602001919060010190611f1c565b5b509050611f459190611fcf565b5090565b828054611f5590612c24565b90600052602060002090601f016020900481019282611f775760008555611fbe565b82601f10611f9057803560ff1916838001178555611fbe565b82800160010185558215611fbe579182015b82811115611fbd578235825591602001919060010190611fa2565b5b509050611fcb9190611fcf565b5090565b5b80821115611fe8576000816000905550600101611fd0565b5090565b6000611fff611ffa84612a26565b612a01565b90508281526020810184848401111561201757600080fd5b612022848285612be2565b509392505050565b60008135905061203981613058565b92915050565b60008135905061204e8161306f565b92915050565b60008083601f84011261206657600080fd5b8235905067ffffffffffffffff81111561207f57600080fd5b60208301915083600182028301111561209757600080fd5b9250929050565b600082601f8301126120af57600080fd5b81356120bf848260208601611fec565b91505092915050565b6000813590506120d781613086565b92915050565b6000602082840312156120ef57600080fd5b60006120fd8482850161202a565b91505092915050565b6000806040838503121561211957600080fd5b60006121278582860161202a565b92505060206121388582860161202a565b9150509250929050565b60008060006060848603121561215757600080fd5b60006121658682870161202a565b93505060206121768682870161202a565b9250506040612187868287016120c8565b9150509250925092565b600080604083850312156121a457600080fd5b60006121b28582860161202a565b92505060206121c3858286016120c8565b9150509250929050565b6000602082840312156121df57600080fd5b60006121ed8482850161203f565b91505092915050565b60008060008060006080868803121561220e57600080fd5b600061221c8882890161203f565b955050602086013567ffffffffffffffff81111561223957600080fd5b61224588828901612054565b94509450506040612258888289016120c8565b925050606086013567ffffffffffffffff81111561227557600080fd5b6122818882890161209e565b9150509295509295909350565b600080604083850312156122a157600080fd5b60006122af8582860161203f565b92505060206122c0858286016120c8565b9150509250929050565b6000806000606084860312156122df57600080fd5b60006122ed8682870161203f565b93505060206122fe868287016120c8565b925050604084013567ffffffffffffffff81111561231b57600080fd5b6123278682870161209e565b9150509250925092565b60006020828403121561234357600080fd5b6000612351848285016120c8565b91505092915050565b60006123668383612634565b60208301905092915050565b61237b81612b83565b82525050565b600061238c82612a67565b6123968185612a95565b93506123a183612a57565b8060005b838110156123d25781516123b9888261235a565b97506123c483612a88565b9250506001810190506123a5565b5085935050505092915050565b6123e881612b95565b82525050565b6123f781612ba1565b82525050565b61240e61240982612ba1565b612cd0565b82525050565b60006124208385612aa6565b935061242d838584612be2565b61243683612da0565b840190509392505050565b600061244c82612a72565b6124568185612aa6565b9350612466818560208601612bf1565b61246f81612da0565b840191505092915050565b600061248582612a7d565b61248f8185612ab7565b935061249f818560208601612bf1565b6124a881612da0565b840191505092915050565b60006124c0602383612ab7565b91506124cb82612db1565b604082019050919050565b60006124e3602283612ab7565b91506124ee82612e00565b604082019050919050565b6000612506601d83612ab7565b915061251182612e4f565b602082019050919050565b6000612529601283612ab7565b915061253482612e78565b602082019050919050565b600061254c602083612ab7565b915061255782612ea1565b602082019050919050565b600061256f602183612ab7565b915061257a82612eca565b604082019050919050565b6000612592602583612ab7565b915061259d82612f19565b604082019050919050565b60006125b5602283612ab7565b91506125c082612f68565b604082019050919050565b60006125d8602483612ab7565b91506125e382612fb7565b604082019050919050565b60006125fb601b83612ab7565b915061260682613006565b602082019050919050565b600061261e601f83612ab7565b91506126298261302f565b602082019050919050565b61263d81612bcb565b82525050565b61264c81612bcb565b82525050565b61266361265e82612bcb565b612cda565b82525050565b61267281612bd5565b82525050565b600061268482856123fd565b6020820191506126948284612652565b6020820191508190509392505050565b60006020820190506126b96000830184612372565b92915050565b60006040820190506126d46000830185612372565b6126e16020830184612643565b9392505050565b600060208201905081810360008301526127028184612381565b905092915050565b600060208201905061271f60008301846123df565b92915050565b600060c08201905061273a600083018a6123ee565b6127476020830189612643565b818103604083015261275a818789612414565b90506127696060830186612643565b818103608083015261277b8185612441565b905061278a60a0830184612372565b98975050505050505050565b600060208201905081810360008301526127b08184612441565b905092915050565b600060208201905081810360008301526127d2818461247a565b905092915050565b600060208201905081810360008301526127f3816124b3565b9050919050565b60006020820190508181036000830152612813816124d6565b9050919050565b60006020820190508181036000830152612833816124f9565b9050919050565b600060208201905081810360008301526128538161251c565b9050919050565b600060208201905081810360008301526128738161253f565b9050919050565b6000602082019050818103600083015261289381612562565b9050919050565b600060208201905081810360008301526128b381612585565b9050919050565b600060208201905081810360008301526128d3816125a8565b9050919050565b600060208201905081810360008301526128f3816125cb565b9050919050565b60006020820190508181036000830152612913816125ee565b9050919050565b6000602082019050818103600083015261293381612611565b9050919050565b600060208201905061294f6000830184612643565b92915050565b600060608201905061296a6000830186612643565b6129776020830185612643565b81810360408301526129898184612441565b9050949350505050565b600060a0820190506129a86000830188612643565b6129b56020830187612643565b6129c26040830186612643565b6129cf6060830185612643565b6129dc6080830184612643565b9695505050505050565b60006020820190506129fb6000830184612669565b92915050565b6000612a0b612a1c565b9050612a178282612c56565b919050565b6000604051905090565b600067ffffffffffffffff821115612a4157612a40612d71565b5b612a4a82612da0565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ad382612bcb565b9150612ade83612bcb565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612b1357612b12612ce4565b5b828201905092915050565b6000612b2982612bcb565b9150612b3483612bcb565b925082612b4457612b43612d13565b5b828204905092915050565b6000612b5a82612bcb565b9150612b6583612bcb565b925082821015612b7857612b77612ce4565b5b828203905092915050565b6000612b8e82612bab565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b83811015612c0f578082015181840152602081019050612bf4565b83811115612c1e576000848401525b50505050565b60006002820490506001821680612c3c57607f821691505b60208210811415612c5057612c4f612d42565b5b50919050565b612c5f82612da0565b810181811067ffffffffffffffff82111715612c7e57612c7d612d71565b5b80604052505050565b6000612c9282612bcb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612cc557612cc4612ce4565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f6964206d7573742062652068617368206f662062797465732064617461000000600082015250565b7f372064617973206469646e277420706173730000000000000000000000000000600082015250565b7f6e6f6e6365206d757374206d617463682074696d657374616d7020696e646578600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f7265706f72746572206e6f74206c6f636b656420666f7220776974686472617760008201527f616c000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f696e73756666696369656e74207374616b65642062616c616e63650000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61306181612b83565b811461306c57600080fd5b50565b61307881612ba1565b811461308357600080fd5b50565b61308f81612bcb565b811461309a57600080fd5b5056fea2646970667358221220090b234664dbe1c38c0c1d19e1d45e53151e48d7c1e094b69a54bbc66548b7e664736f6c63430008030033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/contracts/UsingTellor.sol/UsingTellor.dbg.json b/artifacts/contracts/UsingTellor.sol/UsingTellor.dbg.json index 574a416..e98dc48 100644 --- a/artifacts/contracts/UsingTellor.sol/UsingTellor.dbg.json +++ b/artifacts/contracts/UsingTellor.sol/UsingTellor.dbg.json @@ -1,4 +1,4 @@ { "_format": "hh-sol-dbg-1", - "buildInfo": "../../build-info/36ee78c35dcd78904a34854a6c480231.json" + "buildInfo": "../../build-info/d46c8c3bbd24a5104f77a50713652796.json" } diff --git a/artifacts/contracts/UsingTellor.sol/UsingTellor.json b/artifacts/contracts/UsingTellor.sol/UsingTellor.json index c8ec42b..ae94e3f 100644 --- a/artifacts/contracts/UsingTellor.sol/UsingTellor.json +++ b/artifacts/contracts/UsingTellor.sol/UsingTellor.json @@ -211,8 +211,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506040516200181238038062001812833981810160405281019062000037919062000095565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200010f565b6000815190506200008f81620000f5565b92915050565b600060208284031215620000a857600080fd5b6000620000b8848285016200007e565b91505092915050565b6000620000ce82620000d5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010081620000c1565b81146200010c57600080fd5b50565b6116f3806200011f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212208413c935ca1d8949f593d38a5f10a1a710fa0690cf5ff34818296f71442d997364736f6c63430008030033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212208413c935ca1d8949f593d38a5f10a1a710fa0690cf5ff34818296f71442d997364736f6c63430008030033", + "bytecode": "0x60806040523480156200001157600080fd5b506040516200181238038062001812833981810160405281019062000037919062000095565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200010f565b6000815190506200008f81620000f5565b92915050565b600060208284031215620000a857600080fd5b6000620000b8848285016200007e565b91505092915050565b6000620000ce82620000d5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010081620000c1565b81146200010c57600080fd5b50565b6116f3806200011f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220d4412748f7775579c589884c6cce22a64f473d4f91837ee0192e9566e99894fe64736f6c63430008030033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220d4412748f7775579c589884c6cce22a64f473d4f91837ee0192e9566e99894fe64736f6c63430008030033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/contracts/interface/ITellor.sol/ITellor.dbg.json b/artifacts/contracts/interface/ITellor.sol/ITellor.dbg.json index 26f0e25..ee36697 100644 --- a/artifacts/contracts/interface/ITellor.sol/ITellor.dbg.json +++ b/artifacts/contracts/interface/ITellor.sol/ITellor.dbg.json @@ -1,4 +1,4 @@ { "_format": "hh-sol-dbg-1", - "buildInfo": "../../../build-info/36ee78c35dcd78904a34854a6c480231.json" + "buildInfo": "../../../build-info/d46c8c3bbd24a5104f77a50713652796.json" } diff --git a/artifacts/contracts/interface/ITellor.sol/ITellor.json b/artifacts/contracts/interface/ITellor.sol/ITellor.json index 190e20c..4b4ec3a 100644 --- a/artifacts/contracts/interface/ITellor.sol/ITellor.json +++ b/artifacts/contracts/interface/ITellor.sol/ITellor.json @@ -3,6 +3,19 @@ "contractName": "ITellor", "sourceName": "contracts/interface/ITellor.sol", "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addStakingRewards", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { diff --git a/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.dbg.json b/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.dbg.json index 26f0e25..ee36697 100644 --- a/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.dbg.json +++ b/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.dbg.json @@ -1,4 +1,4 @@ { "_format": "hh-sol-dbg-1", - "buildInfo": "../../../build-info/36ee78c35dcd78904a34854a6c480231.json" + "buildInfo": "../../../build-info/d46c8c3bbd24a5104f77a50713652796.json" } diff --git a/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.json b/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.json index 19bb7d5..f7ab115 100644 --- a/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.json +++ b/artifacts/contracts/mocks/BenchUsingTellor.sol/BenchUsingTellor.json @@ -211,8 +211,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506040516200181438038062001814833981810160405281019062000037919062000097565b80806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000111565b6000815190506200009181620000f7565b92915050565b600060208284031215620000aa57600080fd5b6000620000ba8482850162000080565b91505092915050565b6000620000d082620000d7565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010281620000c3565b81146200010e57600080fd5b50565b6116f380620001216000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212206bf2c06e53d58ce1c2bd5cf790f33fababd39b4a86e36ac5ca9648b7f68968c964736f6c63430008030033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea26469706673582212206bf2c06e53d58ce1c2bd5cf790f33fababd39b4a86e36ac5ca9648b7f68968c964736f6c63430008030033", + "bytecode": "0x60806040523480156200001157600080fd5b506040516200181438038062001814833981810160405281019062000037919062000097565b80806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000111565b6000815190506200009181620000f7565b92915050565b600060208284031215620000aa57600080fd5b6000620000ba8482850162000080565b91505092915050565b6000620000d082620000d7565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010281620000c3565b81146200010e57600080fd5b50565b6116f380620001216000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220241723a222553481bfba2cccf132f9ea89e9b4540020779f9524b186875faaed64736f6c63430008030033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a792765f1161005b578063a792765f1461013c578063adf1639d1461016e578063c5958af9146101a0578063ce5e11bf146101d057610088565b80631959ad5b1461008d57806329449085146100ab57806344e87f91146100dc57806377b03e0d1461010c575b600080fd5b610095610200565b6040516100a29190611311565b60405180910390f35b6100c560048036038101906100c091906110a5565b610224565b6040516100d3929190611282565b60405180910390f35b6100f660048036038101906100f191906110a5565b61039f565b6040516101039190611229565b60405180910390f35b6101266004803603810190610121919061107c565b6106a2565b6040516101339190611347565b60405180910390f35b610156600480360381019061015191906110a5565b6108d7565b60405161016593929190611244565b60405180910390f35b6101886004803603810190610183919061107c565b610989565b60405161019793929190611244565b60405180910390f35b6101ba60048036038101906101b591906110a5565b610a42565b6040516101c791906112ef565b60405180910390f35b6101ea60048036038101906101e591906110a5565b610c86565b6040516101f79190611347565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000610232856106a2565b9050600081111561038f576000806000905060006001846102539190611487565b905060006102618984610c86565b905087811061027b57600080965096505050505050610398565b6102858983610c86565b9050878110156102a057600182965096505050505050610398565b5b60011561038a57826001600285856102b99190611487565b6102c39190611456565b6102cd9190611400565b6102d79190611400565b93506102e38985610c86565b9050878110156103355760006103058a6001876103009190611400565b610c86565b90508881106103205760018597509750505050505050610398565b60018561032d9190611400565b935050610385565b600061034d8a6001876103489190611487565b610c86565b90508881101561037457600180866103659190611487565b97509750505050505050610398565b6001856103819190611487565b9250505b6102a1565b505050505b60008092509250505b9250929050565b6000807318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061046f575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561053e5760007388df592f8eb5d7bd38bfef7deb0fbc02cf3778a090508073ffffffffffffffffffffffffffffffffffffffff1663699f200f7fefa19baa864049f50491093580c5433e97e8d5e41f8db1a61108b4fa44cacd936040518263ffffffff1660e01b81526004016104e6919061132c565b60206040518083038186803b1580156104fe57600080fd5b505afa158015610512573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105369190611012565b9150506105df565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105dc9190611012565b90505b60008173ffffffffffffffffffffffffffffffffffffffff1663248638e586866040516020016106109291906111fd565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161064291906112ab565b60006040518083038186803b15801561065a57600080fd5b505afa15801561066e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610697919061103b565b511191505092915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610771575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156108265760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335e72432836040518263ffffffff1660e01b81526004016107cf91906112ab565b60206040518083038186803b1580156107e757600080fd5b505afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190611122565b90506108d2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166377b03e0d836040518263ffffffff1660e01b815260040161087f91906112ab565b60206040518083038186803b15801561089757600080fd5b505afa1580156108ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cf9190611122565b90505b919050565b6000606060008060006108ea8787610224565b91509150816109145760006040518060200160405280600081525060009450945094505050610982565b60006109208883610c86565b905061092c8882610a42565b945060405180602001604052806000815250805190602001208580519060200120146109645760018582955095509550505050610982565b60006040518060200160405280600081525060009550955095505050505b9250925092565b60006060600080610999856106a2565b905060008114156109c457600060405180602001604052806000815250600093509350935050610a3b565b60006109dc866001846109d79190611487565b610c86565b90506109e88682610a42565b93506040518060200160405280600081525080519060200120848051906020012014610a1f57600184829450945094505050610a3b565b6000604051806020016040528060008152508294509450945050505b9193909250565b60607318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610b11575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610bcd5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630b2d2b0d84846040518363ffffffff1660e01b8152600401610b719291906112c6565b60006040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610bc691906110e1565b9050610c80565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c5958af984846040518363ffffffff1660e01b8152600401610c289291906112c6565b60006040518083038186803b158015610c4057600080fd5b505afa158015610c54573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610c7d91906110e1565b90505b92915050565b60007318431fd88adf138e8b979a7246eb58ea7126ea1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610d55575073e8218cacb0a5421bc6409e498d9f8cc8869945ea73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e0c5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c37b8b484846040518363ffffffff1660e01b8152600401610db59291906112c6565b60206040518083038186803b158015610dcd57600080fd5b505afa158015610de1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e059190611122565b9050610eba565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ce5e11bf84846040518363ffffffff1660e01b8152600401610e679291906112c6565b60206040518083038186803b158015610e7f57600080fd5b505afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611122565b90505b92915050565b6000610ed3610ece84611387565b611362565b90508083825260208201905082856020860282011115610ef257600080fd5b60005b85811015610f225781610f088882610ffd565b845260208401935060208301925050600181019050610ef5565b5050509392505050565b6000610f3f610f3a846113b3565b611362565b905082815260208101848484011115610f5757600080fd5b610f62848285611555565b509392505050565b600081519050610f7981611678565b92915050565b600082601f830112610f9057600080fd5b8151610fa0848260208601610ec0565b91505092915050565b600081359050610fb88161168f565b92915050565b600082601f830112610fcf57600080fd5b8151610fdf848260208601610f2c565b91505092915050565b600081359050610ff7816116a6565b92915050565b60008151905061100c816116a6565b92915050565b60006020828403121561102457600080fd5b600061103284828501610f6a565b91505092915050565b60006020828403121561104d57600080fd5b600082015167ffffffffffffffff81111561106757600080fd5b61107384828501610f7f565b91505092915050565b60006020828403121561108e57600080fd5b600061109c84828501610fa9565b91505092915050565b600080604083850312156110b857600080fd5b60006110c685828601610fa9565b92505060206110d785828601610fe8565b9150509250929050565b6000602082840312156110f357600080fd5b600082015167ffffffffffffffff81111561110d57600080fd5b61111984828501610fbe565b91505092915050565b60006020828403121561113457600080fd5b600061114284828501610ffd565b91505092915050565b611154816114cd565b82525050565b611163816114d9565b82525050565b61117a611175826114d9565b6115b9565b82525050565b600061118b826113e4565b61119581856113ef565b93506111a5818560208601611555565b6111ae8161165a565b840191505092915050565b6111c281611517565b82525050565b6111d18161153b565b82525050565b6111e08161150d565b82525050565b6111f76111f28261150d565b6115c3565b82525050565b60006112098285611169565b60208201915061121982846111e6565b6020820191508190509392505050565b600060208201905061123e600083018461114b565b92915050565b6000606082019050611259600083018661114b565b818103602083015261126b8185611180565b905061127a60408301846111d7565b949350505050565b6000604082019050611297600083018561114b565b6112a460208301846111d7565b9392505050565b60006020820190506112c0600083018461115a565b92915050565b60006040820190506112db600083018561115a565b6112e860208301846111d7565b9392505050565b600060208201905081810360008301526113098184611180565b905092915050565b600060208201905061132660008301846111b9565b92915050565b600060208201905061134160008301846111c8565b92915050565b600060208201905061135c60008301846111d7565b92915050565b600061136c61137d565b90506113788282611588565b919050565b6000604051905090565b600067ffffffffffffffff8211156113a2576113a161162b565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156113ce576113cd61162b565b5b6113d78261165a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061140b8261150d565b91506114168361150d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561144b5761144a6115cd565b5b828201905092915050565b60006114618261150d565b915061146c8361150d565b92508261147c5761147b6115fc565b5b828204905092915050565b60006114928261150d565b915061149d8361150d565b9250828210156114b0576114af6115cd565b5b828203905092915050565b60006114c6826114ed565b9050919050565b60008115159050919050565b6000819050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061152282611529565b9050919050565b6000611534826114ed565b9050919050565b600061154e611549836114e3565b61166b565b9050919050565b60005b83811015611573578082015181840152602081019050611558565b83811115611582576000848401525b50505050565b6115918261165a565b810181811067ffffffffffffffff821117156115b0576115af61162b565b5b80604052505050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160001b9050919050565b611681816114bb565b811461168c57600080fd5b50565b611698816114d9565b81146116a357600080fd5b50565b6116af8161150d565b81146116ba57600080fd5b5056fea2646970667358221220241723a222553481bfba2cccf132f9ea89e9b4540020779f9524b186875faaed64736f6c63430008030033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/contracts/TellorPlayground.sol b/contracts/TellorPlayground.sol index 72f5ab1..9389cfd 100644 --- a/contracts/TellorPlayground.sol +++ b/contracts/TellorPlayground.sol @@ -12,7 +12,6 @@ contract TellorPlayground { bytes32 _queryId, uint256 _time, bytes _value, - uint256 _reward, uint256 _nonce, bytes _queryData, address _reporter @@ -42,7 +41,6 @@ contract TellorPlayground { mapping(address => uint256) private _balances; uint256 public constant timeBasedReward = 5e17; // time based reward for a reporter for successfully submitting a value - uint256 public timeOfLastNewValue = block.timestamp; // time of the last new value, originally set to the block timestamp uint256 public tipsInContract; // number of tips within the contract uint256 public voteCount; uint256 private _totalSupply; @@ -72,6 +70,14 @@ contract TellorPlayground { ] = address(this); } + /** + * @dev Mock function for adding staking rewards + * @param _amount quantity of tokens to transfer to this contract + */ + function addStakingRewards(uint256 _amount) external { + require(_transferFrom(msg.sender, address(this), _amount)); + } + /** * @dev Approves amount that an address is alowed to spend of behalf of another * @param _spender The address which is allowed to spend the tokens @@ -125,8 +131,8 @@ contract TellorPlayground { bytes memory _queryData ) external { require( - _nonce == timestamps[_queryId].length, - "nonce should be correct" + _nonce == timestamps[_queryId].length || _nonce == 0, + "nonce must match timestamp index" ); require( _queryId == keccak256(_queryData) || uint256(_queryId) <= 100, @@ -134,14 +140,6 @@ contract TellorPlayground { ); values[_queryId][block.timestamp] = _value; timestamps[_queryId].push(block.timestamp); - // Send tips + timeBasedReward to reporter and reset tips for ID - (uint256 _tip, uint256 _reward) = getCurrentReward(_queryId); - if (_reward + _tip > 0) { - transfer(msg.sender, _reward + _tip); - } - timeOfLastNewValue = block.timestamp; - tipsInContract -= _tip; - tips[_queryId] = 0; reporterByTimestamp[_queryId][block.timestamp] = msg.sender; stakerDetails[msg.sender].reporterLastTimestamp = block.timestamp; stakerDetails[msg.sender].reportsSubmitted++; @@ -149,7 +147,6 @@ contract TellorPlayground { _queryId, block.timestamp, _value, - _tip + _reward, _nonce, _queryData, msg.sender @@ -354,26 +351,6 @@ contract TellorPlayground { return _decimals; } - /** - * @dev Calculates the current reward for a reporter given tips and time based reward - * @param _queryId is ID of the specific data feed - * @return uint256 tip amount for given query ID - * @return uint256 time based reward - */ - // slither-disable-next-line timestamp - function getCurrentReward(bytes32 _queryId) - public - view - returns (uint256, uint256) - { - uint256 _timeDiff = block.timestamp - timeOfLastNewValue; - uint256 _reward = (_timeDiff * timeBasedReward) / 300; //.5 TRB per 5 minutes (should we make this upgradeable) - if (balanceOf(address(this)) < _reward + tipsInContract) { - _reward = balanceOf(address(this)) - tipsInContract; - } - return (tips[_queryId], _reward); - } - /** * @dev Counts the number of values that have been submitted for a given ID * @param _queryId the ID to look up @@ -545,4 +522,4 @@ contract TellorPlayground { ); return true; } -} +} \ No newline at end of file diff --git a/contracts/interface/ITellor.sol b/contracts/interface/ITellor.sol index 3b0af0d..8869092 100644 --- a/contracts/interface/ITellor.sol +++ b/contracts/interface/ITellor.sol @@ -114,4 +114,7 @@ interface ITellor{ function rescue51PercentAttack(address _tokenHolder) external; function rescueBrokenDataReporting() external; function rescueFailedUpdate() external; + + //Tellor 360 + function addStakingRewards(uint256 _amount) external; } diff --git a/package-lock.json b/package-lock.json index f8fdf22..e64b9de 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "usingtellor", - "version": "4.0.5", + "version": "4.0.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "usingtellor", - "version": "4.0.5", + "version": "4.0.6", "license": "MIT", "dependencies": { "dotenv": "^16.0.1",